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

Вниз

Обработка дисконнекта   Найти похожие ветки 

 
Debug ©   (2007-08-11 20:40) [0]

Выдумал следующую схему сетевой работы клиента:
1. Обмен данными происходит пакетами;
2. При коннекте клиент создает поток в котором до отруба в цикле опрашивается неблокирующий сокет:
а) Читаю данные с сокета. Если в очереди чтения накопился полный пакет обрабатываю его и удаляю из очереди;
б) Пишу данные в сокет, если очереди для отправки не пуста;
3. Основной тред работает только с очередями отправки и получения без возможности собственного приема/передачи.
4. Если пакет - запрос чего либо, то основной тред при желании может подождать (в итоге получит пакет с ответом или дисконнект или таймаут).
5. При обрыве связи об этом узнаёт только дочерний поток. И вызывает процедуру обработки дисконнекта OnDisconnect.

Проблема в том, чтобы сделать вызов OnDisconnect от имени основного потока. Подскажите как быть?

P.S. Возможно надо копать в сторону PostMessage?
P.P.S. Показалось, что вопрос относится к общему форуму, а не к сетям =)


 
Anatoly Podgoretsky ©   (2007-08-11 20:45) [1]

> Debug  (11.08.2007 20:40:00)  [0]

> P.P.S. Показалось, что вопрос относится к общему форуму, а не к сетям

Возможно.


 
Debug ©   (2007-08-12 11:49) [2]

Воспользовался PostMessage, вроде работает


 
Сергей М. ©   (2007-08-13 09:46) [3]

Зачем осн.потоку нужно знать о дисконнекте ?



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
11-1175166440
SergeR
2007-03-29 15:07
2007.10.28
Маленькая проблемка со шрифтами


2-1191743251
мфтнф_й
2007-10-07 11:47
2007.10.28
TCustomListBox -- OnDblClick


15-1190979232
Megabyte
2007-09-28 15:33
2007.10.28
Компоненты по отправке СМС на моб. тел.


15-1190734016
ProgRAMmer Dimonych
2007-09-25 19:26
2007.10.28
Вопрос по ресурсам


8-1168554278
Infinityx93
2007-01-12 01:24
2007.10.28
Динамический Tseries в chart