Форум: "Сети";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
ВнизidTCPServer Найти похожие ветки
← →
malefik (2007-03-19 19:51) [0]Приветствую коллеги!
Вопрос такого плана. Кто сталкивался с indy idTCPServer свойство TerminateWaitTime. Как заставить работать его?
Пробовал в каждом контексте создавать по Ttimer но диспечеризация сообщений не работает в нитках
if (GetMessage(&_m, 0,0,0)!= NULL)
{
DispatchMessage(&_m);
}
нить останавливает....до ожидания сообщения WM_TIMER ....
Как правильно сгородить отключение пользователей по таймауту?
← →
S@shka © (2007-03-19 19:55) [1]athread.connection.readln ("",TimeOUT_Time);
← →
S@shka © (2007-03-19 19:57) [2]http://podgoretsky.com/ddp.html
← →
Reindeer Moss Eater © (2007-03-19 21:12) [3]А какое вообще отношение имеет TerminateWaitTime к таймауту отключения кого-то?
← →
malefik (2007-03-20 06:53) [4]дело что используется не сам IDTCPSERVER а его добавка IDCMDTCPSERVER.
подгоретского читал.....
← →
malefik (2007-03-20 07:12) [5]TerminateWaitTime is an Integer property that identifies the total number of milliseconds that the server should wait while terminating the executable tasks for client connections.
← →
malefik (2007-03-21 10:53) [6]Прошу прощения! После изучения исходников IdCmdTCPServer.pas и IdIOHandler.pas подправил их .....добавил новое событие OnReadTimeout
в function TIdCmdTCPServer.DoExecute(AContext: TIdContext): Boolean; IdCmdTCPServer.pas
LLine := ReadCommandLine(AContext);
if LLine <> "" then begin
if not FCommandHandlers.HandleCommand(AContext, LLine) then begin
DoReplyUnknownCommand(AContext, LLine);
end;
end else begin
DoReadTimeout(AContext); //мой обработчик события
end;
а в
void __fastcall TForm1::IdCmdTCPServer1Connect(TIdContext* AContext)
добавил AContext->Connection->IOHandler->ReadTimeout = 3000; ..нужный мне таймаут
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.059 c