Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.25;
Скачать: 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 вся ветка

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

Наверх




Память: 0.45 MB
Время: 0.072 c
15-1170395300
ZeroDivide
2007-02-02 08:48
2007.02.25
Какую стоит брать видяху под AGP: 7600GS или 1650Pro=1600XT?


11-1148619176
igorek_2005
2006-05-26 08:52
2007.02.25
Как создать TToolBar?


3-1164877480
tytus
2006-11-30 12:04
2007.02.25
Как отсортировать данные в OracleDataSet?


1-1168005013
Igor_Z
2007-01-05 16:50
2007.02.25
Вкладки в свойстве файла


2-1170760534
seesm
2007-02-06 14:15
2007.02.25
Я не знаю asm





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский