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

IdTcpClient и дополнительный поток   Найти похожие ветки 

← →
Pasha L ©   (2007-02-07 00:33) [0]

Здравствуйте.
У меня есть форма, в ней создан дополнительный поток. На форме есть idtcpclient. Вопросы:
1) Как законектить, послать запрос, расконектить клиент из дополнительного потока.
2) Можно ли сделать как-нибудь так, чтобы клиент не находился в другом потоке, чтобы не приходилось осуществлять синхронизацию? Этот клиент используется только в дополнительном потоке (в подпрограммах класса формы не используется)

Делаю так:  if not synch.BeginWrite then
   exit;
 form1.idtcpclient2.Connect;
 form1.idtcpclient2.Write(formpostrequest(saluthost,"sender.php",["session="+session,"mesg="+words,"whisper=nuke_them"]));
 form1.idtcpclient2.ReadFromStack;
 form1.idtcpclient2.disConnect;
 synch.EndWrite;

synch:TMultiReadExclusiveWriteSynchronizer;

Но вылезает ошибка.


← →
Pasha L ©   (2007-02-07 01:07) [1]

Сорри.

formpostrequest со всеми аргументами - это функция, формирующая запрос.

все переменные, использующиеся в приведенном блоке принадлежат данному потоку. synch тоже объявлен в данном потоке


← →
Германн ©   (2007-02-07 01:51) [2]

Используй ICS от Франсуа Пиетт http://www.overbyte.be/frame_index.html и насладись нормальной работой.
Нормальной работой я считаю работу без доппотоков в тех случаях, когда система поддерживает асинхронность!


← →
Сергей М. ©   (2007-02-07 08:17) [3]


> вылезает ошибка


Большая и ужасная ?)


← →
Pasha L ©   (2007-02-07 17:31) [4]


> Большая и ужасная ?)

Socket error #10049 Cannot assign requested adress


← →
Сергей М. ©   (2007-02-08 08:13) [5]


> Этот клиент используется только в дополнительном потоке


А зачем тогда MultiReadExclusiveWriteSynchronizer, если IdTCPClient не используется нигде кроме как в одном-единственном потоке ?


← →
Pasha L ©   (2007-02-08 15:28) [6]

просто при idtcpclient1.create как аргумент нужно указать компонент, где будет создан клиент. что прописывать? я подумал, что его прост онужно создать на главной форме, вот и всё.



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

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



Память: 0.46 MB
Время: 0.036 c
2-1170786552
Михаил_
2007-02-06 21:29
2007.02.25
TDBF


15-1170307163
Elen
2007-02-01 08:19
2007.02.25
Как избавиться от внезапного включения компа


8-1151588962
Gotami
2006-06-29 17:49
2007.02.25
Позиция курсора


2-1170006217
познающий
2007-01-28 20:43
2007.02.25
Русский текст в анг. винде


15-1170192850
Pasha L
2007-01-31 00:34
2007.02.25
Скрыть IP




   Наверх