Когда завершится SendAsync? - PullRequest
       8

Когда завершится SendAsync?

0 голосов
/ 09 сентября 2009

Я пишу сервер, и мне нужно иметь возможность отправлять сообщения всем подключенным клиентам.

Я пытаюсь решить, должен ли я создавать SocketAsyncEventArgs для каждого подключенного сокета и отправлять все пакеты одновременно.

Другим подходом будет использование одного SocketAsyncEventArgs и отправка пакетов один за другим. Тогда было бы заманчиво вызвать SendAsync в методе ProcessSend (который вызывается после завершения SendAsync) и иметь очередь подключенных сокетов. Но что, если по какой-то причине SendAsync не завершится за разумное время? Есть ли сценарий, который бы никогда не завершился?

1 Ответ

0 голосов
/ 09 сентября 2009

SendAsync вернется немедленно. Если вы говорите о самой операции отправки, она не будет никогда завершена, но это может занять много времени, если сокет находится в ненормальном состоянии.

...