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

Вниз

Connection: Keep-Alive и TClientSocket   Найти похожие ветки 

 
Digitman ©   (2001-11-24 13:56) [3]

>eblade
Если OnError при этом не возникает, это означает только одно : соединение разорвано вполне корректно, и инициатором разрыва является сервер. Сервер-то у тебя, наверно, ThreadBlocking ? И TServerClientThread.Execute, наверно, тоже не переопределял ?

Вот, посмотри, что делается в транспортном потоке сервера по-умолчанию:

procedure TServerClientThread.ClientExecute;
var
FDSet: TFDSet;
TimeVal: TTimeVal;
begin
while not Terminated and ClientSocket.Connected do
begin
FD_ZERO(FDSet);
FD_SET(ClientSocket.SocketHandle, FDSet);
TimeVal.tv_sec := 0;
TimeVal.tv_usec := 500;
if (select(0, @FDSet, nil, nil, @TimeVal) > 0) and not Terminated then
if ClientSocket.ReceiveBuf(FDSet, -1) = 0 then Break //!!!!!!!
else Synchronize(DoRead);
if (select(0, nil, @FDSet, nil, @TimeVal) > 0) and not Terminated then
Synchronize(DoWrite);
end;
end;


надеюсь, BREAK даст тебе ответ на вопрос.



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

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

Наверх




Память: 0.46 MB
Время: 0.007 c
1-42716
чайничек
2002-01-28 18:55
2002.02.14
Как писать в Edit однjq из закладок Tabs (TTabControl), и сохранив там запись писать в другой - другое


1-42742
asdf
2002-01-30 13:24
2002.02.14
Создание объектов


3-42663
MVova
2002-01-18 14:00
2002.02.14
Вопрос: Как переустановить 2.5 поверх 2.6?


7-42874
Александр А.
2001-11-06 14:36
2002.02.14
Конкретно PGM-у и Dima-k17 (и любому, кто знает) доп. вопрос о процессорах:


14-42864
Wonder
2001-12-25 11:36
2002.02.14
Merlin! Что же это такое началось?!