![]() |
|
Модераторы: gambit |
![]()
|
|
| Martiner |
|
||||||||||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 22.7.2009 Репутация: нет Всего: нет |
Всем доброго времени суток!
При написание клиент-серверной системы накопилось некоторое кол-во вопросов: 1. Есть сервер, у него есть метод Start(), который запускается в начале работы серверной части. Если в процессе работы клиент вызовет метод Disconnetc() или Close(), то сервер перестанет принимать подключения. Собственно вопрос: есть ли какие-то встроенные механизмы для "перезапуска" BeginAccept? (чтобы не писать это на коленке с помощью бесконечного while, WaitOne или собственной "очереди-массива" соединений)
2. В начале работы сервера вызывается метод Listen(...); возможно ли "приостановить" прослушивание порта и через этот сокет передать клиенту какие-либо данные, вызвав метод Connect(IPEndPoint)? А то получается примерно следующие, чтобы передать клиенту какие-либо данные, без начала соединения со стороны клиента приходится писать отдельный метод, где создается новый сокет и вызывается ф-ция Connect(...):
3. Если вызвать методы BeginSend и BeginReceive без Thread.Sleep(n), то он отправит, не приняв. Как дождаться окончания принятия\отправления данных?
4. Собственно, что должно писаться в методах OnSend и OnReceive? (которые вызываются в BeginSend\BeginReceive) Там хватает примерно следующего:
Если раскоментить EndSend(ar) и EndReceive(ar), то будут разрывать соединение, не успев принять\передать. Может быть тут и нужно писать ожидание завершения приема\передачи? Буду рад любой помощи! Заранее спасибо! |
||||||||||
|
|||||||||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Распределённые приложения и сеть | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |