TcpListener.Start Metoda

Definicja

Rozpoczyna nasłuchiwanie przychodzących żądań połączeń.

Przeciążenia

Start()

Rozpoczyna nasłuchiwanie przychodzących żądań połączeń.

Start(Int32)

Rozpoczyna nasłuchiwanie przychodzących żądań połączeń z maksymalną liczbą oczekujących połączeń.

Start()

Źródło:
TCPListener.cs
Źródło:
TCPListener.cs
Źródło:
TCPListener.cs

Rozpoczyna nasłuchiwanie przychodzących żądań połączeń.

public:
 void Start();
public void Start ();
member this.Start : unit -> unit
Public Sub Start ()

Wyjątki

ErrorCode Użyj właściwości , aby uzyskać określony kod błędu. Po uzyskaniu tego kodu możesz zapoznać się z dokumentacją kodu błędu interfejsu API windows Sockets w wersji 2 , aby uzyskać szczegółowy opis błędu.

Przykłady

W poniższym przykładzie kodu pokazano, jak Start jest używany do nasłuchiwania przychodzących prób połączenia klienta.

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

Uwagi

Metoda Start inicjuje bazową Socketmetodę , wiąże ją z lokalnym punktem końcowym i nasłuchuje prób połączenia przychodzącego. Jeśli żądanie połączenia zostanie odebrane, Start metoda spowoduje utworzenie kolejki żądania i kontynuowanie nasłuchiwania dodatkowych żądań do momentu wywołania Stop metody . Jeśli TcpListener żądanie połączenia zostanie odebrane po tym, jak zostało już w kolejce maksymalną liczbę połączeń, zostanie ono wyrzucone SocketException na klienta.

Aby usunąć połączenie z kolejki połączeń przychodzących, użyj AcceptTcpClient metody lub AcceptSocket metody . Metoda AcceptTcpClient usunie połączenie z kolejki i zwróci element TcpClient , którego można użyć do wysyłania i odbierania danych. Metoda AcceptSocket zwróci Socket wartość , której można użyć do wykonania tej samej czynności. Jeśli aplikacja wymaga tylko synchronicznego we/wy, użyj polecenia AcceptTcpClient. Aby uzyskać bardziej szczegółową kontrolę behawioralną, użyj polecenia AcceptSocket. Obie te metody blokują, dopóki żądanie połączenia nie będzie dostępne w kolejce.

Stop Użyj metody , aby zamknąć TcpListener i zatrzymać nasłuchiwanie. Użytkownik jest odpowiedzialny za oddzielne zamykanie akceptowanych połączeń.

Uwaga

Ten element członkowski generuje informacje ze śledzenia pod warunkiem włączenia funkcji śledzenia sieci w aplikacji. Aby uzyskać więcej informacji, zobacz Śledzenie sieci w .NET Framework.

Zobacz też

Dotyczy

Start(Int32)

Źródło:
TCPListener.cs
Źródło:
TCPListener.cs
Źródło:
TCPListener.cs

Rozpoczyna nasłuchiwanie przychodzących żądań połączeń z maksymalną liczbą oczekujących połączeń.

public:
 void Start(int backlog);
public void Start (int backlog);
member this.Start : int -> unit
Public Sub Start (backlog As Integer)

Parametry

backlog
Int32

Maksymalna długość kolejki oczekujących połączeń.

Wyjątki

Wystąpił błąd podczas uzyskiwania dostępu do gniazda.

Parametr backlog jest mniejszy niż zero lub przekracza maksymalną liczbę dozwolonych połączeń.

Wartość bazowa Socket ma wartość null.

Przykłady

W poniższym przykładzie kodu pokazano, jak Start jest używany do nasłuchiwania przychodzących prób połączenia klienta.

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

Uwagi

Metoda Start inicjuje bazową Socketmetodę , wiąże ją z lokalnym punktem końcowym i nasłuchuje prób połączenia przychodzącego. Jeśli żądanie połączenia zostanie odebrane, Start spowoduje utworzenie kolejki żądania i kontynuowanie nasłuchiwania dodatkowych żądań do momentu wywołania Stop metody . Jeśli TcpListener żądanie połączenia zostanie odebrane po tym, jak zostało już w kolejce maksymalna liczba połączeń, zostanie ona wyrzucona SocketException na klienta.

Aby usunąć połączenie z kolejki połączeń przychodzących, użyj AcceptTcpClient metody lub AcceptSocket metody . Metoda AcceptTcpClient usunie połączenie z kolejki i zwróci element TcpClient , którego można użyć do wysyłania i odbierania danych. Metoda AcceptSocket zwróci Socket wartość , której można użyć do wykonania tej samej czynności. Jeśli aplikacja wymaga tylko synchronicznego we/wy, użyj polecenia AcceptTcpClient. Aby uzyskać bardziej szczegółową kontrolę behawioralną, użyj AcceptSocket metody . Obie te metody blokują, dopóki żądanie połączenia nie będzie dostępne w kolejce.

Stop Użyj metody , aby zamknąć TcpListener i zatrzymać nasłuchiwanie. Użytkownik jest odpowiedzialny za oddzielne zamykanie akceptowanych połączeń.

Uwaga

SocketException.ErrorCode Użyj właściwości , aby uzyskać konkretny kod błędu i zapoznaj się z dokumentacją kodu błędu interfejsu API windows Sockets w wersji 2, aby uzyskać szczegółowy opis błędu.

Uwaga

Ten element członkowski generuje informacje ze śledzenia pod warunkiem włączenia funkcji śledzenia sieci w aplikacji. Aby uzyskać więcej informacji, zobacz Śledzenie sieci w .NET Framework.

Zobacz też

Dotyczy