Вниз
Скачать: 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
3-1097639943
Klim Samgin
2004-10-13 07:59
2004.11.14
Удаление папки после TBatchMove


14-1098780654
Snip
2004-10-26 12:50
2004.11.14
MBR


3-1097501972
iat
2004-10-11 17:39
2004.11.14
QReport "периодически" не позволяет печатать


6-1094250431
Wind
2004-09-04 02:27
2004.11.14
Буфер обмена через Socket


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




   Наверх