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

Вниз

Открытие сокета в неглавной нити   Найти похожие ветки 

 
VaS ©   (2002-11-22 12:52) [0]

Почему приходиться делать так:


Socket.Active :=True;
repeat
C_System.DoProcessMes;
Sleep(10);
until Socket.Active = true;


Если убираем обработку сообщений, то сокет не откроется.
После введения нитки, работающей с сокетом таким образом, в нек момент времени (через минуту или через сутки - по разному) приложение при потере фокуса выдает AV по адресу 0. После чего каждая последующая потеря фокуса обязательно сопровождается данной ошибкой, хотя приложение продолжает работать.

У меня большие подозрения, что работать с сокетами нужно несколько иначе.


 
Polevi ©   (2002-11-22 14:04) [1]

твои подозрения не напрасны


 
VaS ©   (2002-11-22 14:21) [2]

А подробнее? Сокеты используют для работы сообщения виндоус? Нет? Тогда как правильно организовывать работу с ними в нитях?


 
OutSidEr   (2002-11-22 15:09) [3]

ИМХО самое лучшее - это использовать нормальные библиотеки для работы с сокетами вместо стандартных дельфийских - Synapse например. Или, если хочется поизвращаться, можно и на вндовом API...


 
Polevi ©   (2002-11-22 15:09) [4]

если ты используешь TClientSocket, почитай хелп на WSAAsyncSelect



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

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

Наверх




Память: 0.47 MB
Время: 0.028 c
14-62774
Сатир
2002-12-28 13:33
2003.01.20
Задача для разминки мозгов - практичный вариант


14-62800
Cr@sh
2002-12-31 20:36
2003.01.20
Дед Мороз, подари мне безглючную жизнь %)


1-62530
MemoryLeak
2003-01-10 19:57
2003.01.20
Нужен пример Paint`а стандартного в Windows`е...


1-62603
vlad40
2003-01-09 11:41
2003.01.20
Обращение к компоненту по его имени


4-62948
dimmu3
2002-12-02 08:42
2003.01.20
как сделать, чтобы для формы в приложении на taskbar е отображала