Condividi tramite


TcpListener.Start Metodo

Definizione

Avvia l'attesa delle richieste di connessione in ingresso.

Overload

Start()

Avvia l'attesa delle richieste di connessione in ingresso.

Start(Int32)

Avvia l'attesa delle richieste di connessione in ingresso specificando un numero massimo di possibili connessioni in sospeso.

Start()

Origine:
TCPListener.cs
Origine:
TCPListener.cs
Origine:
TCPListener.cs

Avvia l'attesa delle richieste di connessione in ingresso.

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

Eccezioni

Per ottenere il codice di errore specificato, utilizzare la proprietà ErrorCode. Una volta ottenuto il codice, è possibile trovare una descrizione dettagliata dell'errore nella documentazione relativa ai codici di errore dell'API di Windows Sockets versione 2.

Esempio

Nell'esempio di codice seguente viene illustrato come Start viene usato per restare in ascolto dei tentativi di connessione client in ingresso.

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

Commenti

Il Start metodo inizializza l'oggetto sottostante Socket, lo associa a un endpoint locale e rimane in ascolto dei tentativi di connessione in ingresso. Se viene ricevuta una richiesta di connessione, il Start metodo accoderà la richiesta e continuerà ad ascoltare le richieste aggiuntive fino a quando non si chiama il Stop metodo . Se TcpListener riceve una richiesta di connessione dopo aver già accodato il numero massimo di connessioni, genererà un'eccezione SocketException nel client.

Per rimuovere una connessione dalla coda di connessione in ingresso, usare il AcceptTcpClient metodo o il AcceptSocket metodo . Il AcceptTcpClient metodo rimuoverà una connessione dalla coda e restituirà un oggetto TcpClient che è possibile usare per inviare e ricevere dati. Il AcceptSocket metodo restituirà un Socket oggetto che è possibile usare per eseguire la stessa operazione. Se l'applicazione richiede solo I/O sincrono, usare AcceptTcpClient. Per un controllo comportamentale più dettagliato, usare AcceptSocket. Entrambi questi metodi vengono bloccati fino a quando non è disponibile una richiesta di connessione nella coda.

Usare il Stop metodo per chiudere e interrompere l'ascolto TcpListener . L'utente è responsabile della chiusura delle connessioni accettate separatamente.

Nota

Questo membro genera informazioni di traccia quando viene abilitata la funzionalità di traccia di rete nell'applicazione in uso. Per altre informazioni, vedere Traccia di rete in .NET Framework.

Vedi anche

Si applica a

Start(Int32)

Origine:
TCPListener.cs
Origine:
TCPListener.cs
Origine:
TCPListener.cs

Avvia l'attesa delle richieste di connessione in ingresso specificando un numero massimo di possibili connessioni in sospeso.

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

Parametri

backlog
Int32

Lunghezza massima della coda delle connessioni in sospeso.

Eccezioni

Si è verificato un errore durante l'accesso al socket.

Il parametro backlog è minore di zero o supera il numero massimo di connessioni consentite.

Il Socket sottostante è null.

Esempio

Nell'esempio di codice seguente viene illustrato come Start viene usato per restare in ascolto dei tentativi di connessione client in ingresso.

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

Commenti

Il Start metodo inizializza l'oggetto sottostante Socket, lo associa a un endpoint locale e rimane in ascolto dei tentativi di connessione in ingresso. Se viene ricevuta una richiesta di connessione, Start accoderà la richiesta e continuerà ad ascoltare richieste aggiuntive fino a quando non si chiama il Stop metodo . Se TcpListener riceve una richiesta di connessione dopo che ha già accodato il numero massimo di connessioni, verrà generata un'eccezione SocketException nel client.

Per rimuovere una connessione dalla coda di connessione in ingresso, usare il AcceptTcpClient metodo o il AcceptSocket metodo . Il AcceptTcpClient metodo rimuoverà una connessione dalla coda e restituirà un oggetto TcpClient che è possibile usare per inviare e ricevere dati. Il AcceptSocket metodo restituirà un Socket oggetto che è possibile usare per eseguire la stessa operazione. Se l'applicazione richiede solo I/O sincrono, usare .AcceptTcpClient Per un controllo comportamentale più dettagliato, usare il AcceptSocket metodo . Entrambi questi metodi vengono bloccati fino a quando non è disponibile una richiesta di connessione nella coda.

Usare il Stop metodo per chiudere e interrompere l'ascolto TcpListener . L'utente è responsabile della chiusura delle connessioni accettate separatamente.

Nota

Usare la proprietà SocketException.ErrorCode per ottenere il codice di errore specifico e fare riferimento alla documentazione relativa ai codici di errore dell'API di Windows Sockets versione 2 per una descrizione dettagliata dell'errore.

Nota

Questo membro genera informazioni di traccia quando viene abilitata la funzionalità di traccia di rete nell'applicazione in uso. Per altre informazioni, vedere Traccia di rete in .NET Framework.

Vedi anche

Si applica a