Socket.Listen 方法

定义

重载

Listen()

Socket 置于侦听状态。

Listen(Int32)

Socket 置于侦听状态。

Listen()

Socket 置于侦听状态。

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

注解

自动确定挂起的连接队列的最大长度。

适用于

Listen(Int32)

Socket 置于侦听状态。

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

参数

backlog
Int32

挂起连接队列的最大长度。

例外

尝试访问套接字时出错。

示例

下面的代码示例用于 Socket 侦听传入连接。

// create the socket
Socket^ listenSocket = gcnew Socket( AddressFamily::InterNetwork,
   SocketType::Stream,
   ProtocolType::Tcp );

// bind the listening socket to the port
IPAddress^ hostIP = ( Dns::Resolve( IPAddress::Any->ToString() ) )->AddressList[ 0 ];
IPEndPoint^ ep = gcnew IPEndPoint( hostIP,port );
listenSocket->Bind( ep );

// start listening
listenSocket->Listen( backlog );
    // create the socket
    Socket listenSocket = new Socket(AddressFamily.InterNetwork,
                                     SocketType.Stream,
                                     ProtocolType.Tcp);

    // bind the listening socket to the port
IPAddress hostIP = (Dns.Resolve(IPAddress.Any.ToString())).AddressList[0];
    IPEndPoint ep = new IPEndPoint(hostIP, port);
    listenSocket.Bind(ep);

    // start listening
    listenSocket.Listen(backlog);
   ' create the socket
   Dim listenSocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
   
   ' bind the listening socket to the port
   Dim hostIP As IPAddress = Dns.Resolve(IPAddress.Any.ToString()).AddressList(0)
   Dim ep As New IPEndPoint(hostIP, port)
   listenSocket.Bind(ep)
   
   ' start listening
   listenSocket.Listen(backlog)
End Sub

注解

Listen 导致面向 Socket 连接的侦听传入连接尝试。 该 backlog 参数指定可以排队接受的传入连接数。 若要确定可以指定的最大连接数,请检索 MaxConnections 该值。 Listen 不阻止。

如果收到, SocketException请使用该 ErrorCode 属性获取特定的错误代码。 获取此代码后,请参阅Windows套接字版本 2 API 错误代码文档,获取错误详细说明。 使用 AcceptBeginAccept 接受来自队列的连接。

备注

在调用之前,必须调用Bind该方法,否则Listen将引发方法SocketExceptionListen

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

备注

积压工作参数仅限于不同的值,具体取决于操作系统。 可以指定更高的值,但积压工作将基于操作系统受到限制。

另请参阅

适用于