Вниз
Скачать: 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.025 c
3-1164981214
DelphiLexx
2006-12-01 16:53
2007.02.25
Аналог UpdateRecord но без CashedUpdates


2-1170677592
Drone
2007-02-05 15:13
2007.02.25
Вопрос касается удаления записи из типизированного файла.


15-1170419129
Kolan
2007-02-02 15:25
2007.02.25
Чем закончился Прогресс бар?


2-1170504882
SveTT
2007-02-03 15:14
2007.02.25
Повтор значений - ошибка


2-1170872689
Ламерок
2007-02-07 21:24
2007.02.25
Как правильно сделать ?




   Наверх