Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

IdTCPServer1Execute(AThread: TIdPeerThread); Какой тут AThread? [D7, XP]


OW ©   (2011-12-28 12:48:00) 

тут у нас, по идее, AThread это тот, который был создан для этого клиента при его соединении с сервером? Так?
и тогда уместно писать в

onIdTCPServer1Connect(AThread: TIdPeerThread);
(пусть, Для_только_что_соединившегося_клиента: Array of TIdPeerThread;)
var
Для_только_что_соединившегося_клиента[i] := AThread
и до дисконнекта соединение этого клиента будет жить, и с ним нужно общаться через него.
т.е. через Для_только_что_соединившегося_клиента[i]
Так?


OW   (2011-12-28 13:54:00) [1]

спасибо


Сергей М.   (2011-12-28 13:32:00) [2]


> это если я так сам захочу сделать?
> А если по-деревенски, то и будет
> >> который при коннекте создался тот и будет в экзекуте.
>
> Так?


Да, так.


OW   (2011-12-28 13:00:00) [3]


> Сергей М. ©   (28.12.11 12:55) [4]


> При спользовании пула тредов единожды созданный тред может
> быть использован в разное время для обслуживания разных
> клиентов.

ну, это если я так сам захочу сделать?
А если по-деревенски, то и будет
>> который при коннекте создался тот и будет в экзекуте.
Так?

Массив.. это я так, для понятности, о том что хочу видеть :)


OW   (2011-12-28 12:55:00) [4]

а не, поняли :)


> Медвежонок Пятачок ©   (28.12.11 12:52) [1]

да, это. Спасибо!


Сергей М.   (2011-12-28 12:55:00) [5]


> AThread это тот, который был создан для этого клиента при
> его соединении с сервером? Так?


Не так. Точнее не всегда так.
При спользовании пула тредов единожды созданный тред может быть использован в разное время для обслуживания разных клиентов.

> Для_только_что_соединившегося_клиента: Array of TIdPeerThread

Массив ссылок на треды вовсе не нужен.
В теле Execute для общащения с соотв.клиентом обращайся к AThread.Connection


OW   (2011-12-28 12:54:00) [6]

*var в предыдущем посте не читать
а.. наверное не понятно, все равно, написал

т.е. вот этот AThread, он при коннекте рождается, назначается клиенту, который соединяется и не отнимается у него до тех пор, пока он не отсоединится. Сам или по таймауту. (И не перескакивает, ну это одно и тоже с "не отнимается")
Правильно понимаю?


Медвежонок Пятачок   (2011-12-28 12:52:00) [7]

который при коннекте создался тот и будет в экзекуте.


Наверх

Титульная страница Поиск, карта сайта Написать письмо