![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TServerSocket/TClientSocket
Анонимщик © (2004-05-05 11:33:00)Можно ли с помощью TServerSocket послать одинаковые данные нескольким TClientSocket'ам одной командой?
Анонимщик (2004-05-05 14:02:00) [1]Возбудить исключение OnClientError именно для соответствующего клиента. Хотя что же делать с остальными и в какой последовтельности возбуждать и вызывать?
А что, не растет нагрузка разве? Смотря сколько данных.
Впрочем, ты прав. Спасибо.
Digitman (2004-05-05 13:06:00) [2]
> Анонимщик © (05.05.04 13:01) [13]
> что же делать с остальными и в какой последовтельности возбуждать
> и вызывать?
вот именно !
а вдруг ты как прикладник организовал что-то вроде "транзакции" ? То бишь, "либо всем, либо никому" ? и что Борланду делать ? из 10-ти акт.клиентов 5-рым он уже разослал сообщение, а на 6-ом споткнулся ..
Анонимщик (2004-05-05 13:01:00) [3]Возбудить исключение OnClientError именно для соответствующего клиента. Хотя что же делать с остальными и в какой последовтельности возбуждать и вызывать?
А что, не растет нагрузка разве? Смотря сколько данных.
Впрочем, ты прав. Спасибо.
Rouse_ (2004-05-05 12:59:00) [4]Если так уж охота отправлять одной строкой всем, то придется перейти на UDP
Digitman (2004-05-05 12:35:00) [5]
> в парметрах указываю список, например, адресов (или маску
> какую), по которым нужно доставить данные
а теперь представь себе, что канал связи с не менее чем одним из адресатов, фигурировавших в send-списке на момент вызова такого гипотетического send-мктода, отказал в ходе попытки коммуникации с адресатом ... как, по твоему, должен отреагировать Борланд ? Прервать "multicast"-операцию на неопределенном этапе ? Возбудить исключение ? Игнорировать отказ и продолжить далее по списку ? Как ты себе бы сам это мыслил ?
> Затем чтобы нагрузку на сеть уменьшить
с чего ты взял, что нагрузка в случае последовательного вызова методов передачи для каждого акт.клиента ощутимо растет ? Аргументы твои ?
Digitman (2004-05-05 12:29:00) [6]
> Анонимщик © (05.05.04 12:23) [9]
ссылку на что ?
в основе упомянутых компонентов лежит WinSock 1.1 API, т.е. возможности компонентов определяются функциональностью инкапсулируемого ими механизма и интерфейса WinSock конкретной версии
о том, что может, а чего не может WinSock той или иной версии, вполне сносно описано в http://book.itep.ru/7/sock_71.htm
Анонимщик (2004-05-05 12:23:00) [7]Digitman,
может, ссылку дашь, чтобы исправиться?
Digitman (2004-05-05 12:22:00) [8]
> Анонимщик © (05.05.04 12:09) [5]
никакой язвы.
> это борландовская недоработка или мое кривое понимание?
второе
Анонимщик (2004-05-05 12:14:00) [9]Да нет, я имел в виду, что пишу что-то вроде SendBuf, а в парметрах указываю список, например, адресов (или маску какую), по которым нужно доставить данные. Затем чтобы нагрузку на сеть уменьшить.
MU (2004-05-05 12:11:00) [10]Напишите свою функцию с перебором клиентов (SendAll) и вызывайте ее - вот и будет вам одна команда
Анонимщик (2004-05-05 12:09:00) [11]Зачем же язвить? Скажи лучше, это борландовская недоработка или мое кривое понимание?
Digitman (2004-05-05 11:57:00) [12]
> Анонимщик
почему бы и нет ?
Анонимщик (2004-05-05 11:50:00) [13]Так и делаю, да только что же выходит, одинаковые данные отправлять по несколько раз?
Digitman (2004-05-05 11:37:00) [14]нет, не может
Rouse_ (2004-05-05 11:37:00) [15]Перебери все соединения и в каждое отправь...