Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.23;
Скачать: CL | DM;

Вниз

В каком потоке выполняются обработчики событий TClientSocket?   Найти похожие ветки 

 
AkaSaint ©   (2004-04-01 16:40) [0]

Я обнаружил, что после успешного выполнения ClientSocket.Open
число потоков приложения увеличивается на 2. У меня 3 вопроса:
1) Что это за 2 потока? Кто непосредственно их создает
(TClientSocket? Библиотека WinSock? Еще кто-то?)
2) Что это за потоки, каковы их функции?
3) В контексте какого потока вызываются обработчики событий
OnRead, OnWrite этого компонента - в контексте главного VCL-потока или же одного из этих дополнительных потоков? Иными словами, могу ли я быть уверен, что если в обработчике события OnShow некоторой формы:

...
ClientSocket.SendStream(...);//Запрос к серверу приложений
...//(*)Выполнение более или менее длительной операции

то приход ответа от сервера приложений не прервет выполнение (*)?
Буду благодарен за ответы или ссылки на материалы в Сети или в реале.


 
Digitman ©   (2004-04-01 16:53) [1]


> 1) Что это за 2 потока? Кто непосредственно их создает


1-й - основной код.поток процесса твоего приложения
2-й создает ядро


> 3) В контексте какого потока вызываются обработчики событий
>


в контексте того потока, который выполнил ClientSocket.Open


 
Digitman ©   (2004-04-01 16:55) [2]

обработчики всех без исключений событий компонента будут вызываться компонентом именно в том код.потоке, который выполнил метод компонента Open() (или Active := True)


 
AkaSaint ©   (2004-04-01 23:51) [3]

Спасибо, основной вопрос я выяснил. Только я написал, что число потоков увеличивается на 2, т.е. всего их 3. Поэтому хотелось бы узнать, что это еще за один поток. И зачем эти 2 новых потока нужны.


 
Digitman ©   (2004-04-02 08:10) [4]

а серверная часть в том же приложении, где и клиентская часть ? или в отдельном ?


 
AkaSaint ©   (2004-04-02 22:52) [5]

Серверная часть - отдельное приложение.



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

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

Наверх




Память: 0.48 MB
Время: 0.055 c
14-1083436636
RealRascal
2004-05-01 22:37
2004.05.23
win xp и принтер


6-1080819517
bytebutcher
2004-04-01 15:38
2004.05.23
Подскажите как использовать TIdTunnelMaster и TIdTunnelSlave?


3-1083244047
GEN
2004-04-29 17:07
2004.05.23
БД Access, проблема переноса на другую машину


14-1083712106
Soft
2004-05-05 03:08
2004.05.23
Нужна ли Украина России?


14-1083226422
BiN
2004-04-29 12:13
2004.05.23
У нас в Москве машины с лентами