Socket.Listen 方法

定义

重载

Listen()

Socket 置于侦听状态。

Listen(Int32)

Socket 置于侦听状态。

Listen()

Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs

Socket 置于侦听状态。

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

注解

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

适用于

Listen(Int32)

Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs

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 中的网络跟踪

注意

积压工作参数限制为不同的值,具体取决于操作系统。 可以指定更高的值,但积压工作将根据操作系统进行限制。

另请参阅

适用于