Вниз
Скачать: CL | DM;

Работа с SocketConnection из разных потоков   Найти похожие ветки 

 
Oleg Laukart ©   (2003-08-04 10:42) [0]

При работе с SocketConnection осебенно длительные операции надо вынести в отдельный поток. Оказалось, что если Open сделать в основном потоке, то в дополнительном потоке (TThread) связи с соккет-сервером не устанавливаются и вызов метода зависает на неопределенный период. Что делать? Тот-же еффект если Open делать в дополнительном потоке. Тогда в основном при вызове функций сервера выдается сообщение типа "метод не вернул значение".
Пробовал делать CoInitializeEx (nil, COINIT_MULTITHREADED);
- не помогает.


 
Набережных С. ©   (2003-08-05 18:25) [1]

Возьми интерфейс, полученный SocketConnection, и маршалируй его в доп. поток. И не забудь CoInitialize.


 
clickmaker ©   (2003-08-12 17:18) [2]

Либо еще можно IGlobalInterfaceTable юзать. ИМХО, с ней геморроя меньше, чем с маршаллингом


 
Набережных С. ©   (2003-08-12 20:12) [3]

>clickmaker ©   (12.08.03 17:18)

Через GIT - это тоже маршалинг, один из способов



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
4-1096885733
drew
2004-10-04 14:28
2004.11.14
Удаление значения ключа из реестра


1-1099288052
Роман
2004-11-01 08:47
2004.11.14
Сохранение данных


3-1097754510
Aleksandr.
2004-10-14 15:48
2004.11.14
Как проверить реальный тип данных поля в Парадоксе?


1-1098973712
debuger
2004-10-28 18:28
2004.11.14
Синхронизация по времени выполнения.


14-1098896574
Настенька!!!
2004-10-27 21:02
2004.11.14
Корешик "Вика"




   Наверх