Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.05.04;
Скачать: CL | DM;

Вниз

Разрыв соединения с многопоточным сервером   Найти похожие ветки 

 
Debug ©   (2007-07-29 19:41) [0]

Каким образом отследить в stThreadBlocking сервере процесс отключения клиента? Событие OnDisconnect не возникает.
Проверил отладчиком: в соединенном состоянии WaitForData ждет 1000 мс. При выполнении на клиенте:

ClientSocket1.Active := False;

WaitForData выполняется мгновенно, но последующий метод Read не генерит исключительную ситуацию.

while not Terminated and ClientSocket.Connected do
begin
 try
   if SocketStream.WaitForData(1000) then
   begin
     Received := SocketStream.Read(Buffer, SizeOf(Buffer));
     if Received <= 0 then
     begin
       // ...
     end;
   end;
 except on E: Exception do
   begin
     Terminate;
   end;
 end;
end;


 
SlymRO ©   (2007-07-30 04:36) [1]

Debug ©   (29.07.07 19:41)
последующий метод Read не генерит исключительную ситуацию

Ворачивает 0 байт почтитанно... можно закрываться...
Делай свое "грязное дело" перед выходом из ClientExecute



Страницы: 1 вся ветка

Текущий архив: 2008.05.04;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.013 c
15-1205303786
SKIPtr
2008-03-12 09:36
2008.05.04
Помогите выбрать вентилятор


4-1188547784
fromats1
2007-08-31 12:09
2008.05.04
Запуск процесса от имени другого процесса


15-1205919660
Empleado
2008-03-19 12:41
2008.05.04
Три закона А. Кларка


15-1205931726
@!!ex
2008-03-19 16:02
2008.05.04
Аналог property в C++


3-1196666491
zorik
2007-12-03 10:21
2008.05.04
одновременное изменение первичного и внешнего ключей