TcpListener.Start Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Запускает ожидание входящих запросов на подключение.
Перегрузки
Start() |
Запускает ожидание входящих запросов на подключение. |
Start(Int32) |
Запускает ожидание входящих запросов на подключение с максимальным числом ожидающих подключений. |
Start()
- Исходный код:
- TCPListener.cs
- Исходный код:
- TCPListener.cs
- Исходный код:
- TCPListener.cs
Запускает ожидание входящих запросов на подключение.
public:
void Start();
public void Start ();
member this.Start : unit -> unit
Public Sub Start ()
Исключения
Для получения кода ошибки можно воспользоваться свойством ErrorCode. Получив этот код, можно обратиться за подробным описанием ошибки к документации Коды ошибок API для сокетов Windows версии 2.
Примеры
В следующем примере кода показано, как Start используется для прослушивания входящих попыток подключения клиента.
public:
static void DoStart(TcpListener^ listener, int backlog)
{
// Start listening for client connections with the
// specified backlog.
listener->Start(backlog);
Console::WriteLine("Started listening");
}
public static void DoStart(TcpListener t, int backlog)
{
// Start listening for client connections with the
// specified backlog.
t.Start(backlog);
Console.WriteLine("started listening");
}
Public Shared Sub DoStart(t As TcpListener, backlog As Integer)
' Start listening for client connections with the
' specified backlog.
t.Start(backlog)
Console.WriteLine("started listening")
End Sub
Комментарии
Метод Start инициализирует базовый Socketобъект , привязывает его к локальной конечной точке и прослушивает входящие попытки подключения. Если запрос на подключение получен, Start метод помещит запрос в очередь и продолжит прослушивать дополнительные запросы, пока вы не вызовете Stop метод . Если TcpListener получает запрос на подключение после того, как он уже поставил в очередь максимальное число подключений SocketException , он вызовет исключение на клиенте.
Чтобы удалить подключение из очереди входящих подключений, используйте AcceptTcpClient метод или AcceptSocket метод . Метод AcceptTcpClient удалит подключение из очереди и возвратит TcpClient объект , который можно использовать для отправки и получения данных. Метод AcceptSocket вернет объект , Socket который можно использовать для выполнения аналогичных действий. Если приложению требуется только синхронный ввод-вывод, используйте AcceptTcpClient. Для более подробного контроля поведения используйте AcceptSocket. Оба этих метода блокируются до тех пор, пока запрос на подключение не будет доступен в очереди.
Используйте метод , Stop чтобы закрыть TcpListener и остановить прослушивание. Вы несете ответственность за закрытие принятых подключений отдельно.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в статье Трассировка сети в .NET Framework.
См. также раздел
Применяется к
Start(Int32)
- Исходный код:
- TCPListener.cs
- Исходный код:
- TCPListener.cs
- Исходный код:
- TCPListener.cs
Запускает ожидание входящих запросов на подключение с максимальным числом ожидающих подключений.
public:
void Start(int backlog);
public void Start (int backlog);
member this.Start : int -> unit
Public Sub Start (backlog As Integer)
Параметры
- backlog
- Int32
Максимальная длина очереди ожидающих подключений.
Исключения
Произошла ошибка при получении доступа к сокету.
Значение параметра backlog
меньше нуля или превышает максимальное число разрешенных подключений.
Основной объект Socket имеет значение null.
Примеры
В следующем примере кода показано, как Start используется для прослушивания входящих попыток подключения клиента.
public:
static void DoStart(TcpListener^ listener, int backlog)
{
// Start listening for client connections with the
// specified backlog.
listener->Start(backlog);
Console::WriteLine("Started listening");
}
public static void DoStart(TcpListener t, int backlog)
{
// Start listening for client connections with the
// specified backlog.
t.Start(backlog);
Console.WriteLine("started listening");
}
Public Shared Sub DoStart(t As TcpListener, backlog As Integer)
' Start listening for client connections with the
' specified backlog.
t.Start(backlog)
Console.WriteLine("started listening")
End Sub
Комментарии
Метод Start инициализирует базовый Socketобъект , привязывает его к локальной конечной точке и прослушивает входящие попытки подключения. Если запрос на подключение получен, Start будет ставить запрос в очередь и продолжать прослушивать дополнительные запросы, пока не будет вызываться Stop метод . Если TcpListener получает запрос на подключение после того, как он уже помещен в очередь, максимальное число подключений SocketException будет вызываться на клиенте.
Чтобы удалить подключение из очереди входящих подключений, используйте AcceptTcpClient метод или AcceptSocket метод . Метод AcceptTcpClient удалит подключение из очереди и возвратит TcpClient объект , который можно использовать для отправки и получения данных. Метод AcceptSocket вернет объект , Socket который можно использовать для выполнения аналогичных действий. Если приложению требуется только синхронный ввод-вывод, используйте AcceptTcpClient. Для более подробного контроля поведения используйте AcceptSocket метод . Оба этих метода блокируются до тех пор, пока запрос на подключение не будет доступен в очереди.
Используйте метод , Stop чтобы закрыть TcpListener и остановить прослушивание. Вы несете ответственность за закрытие принятых подключений отдельно.
Примечание
Используйте свойство SocketException.ErrorCode для получения конкретного кода ошибки и обратитесь за подробным описанием ошибки к документации Коды ошибок API для сокетов Windows версии 2.
Примечание
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в статье Трассировка сети в .NET Framework.