本文整理汇总了C#中System.Net.Sockets.Socket.SetToConnected方法的典型用法代码示例。如果您正苦于以下问题:C# Socket.SetToConnected方法的具体用法?C# Socket.SetToConnected怎么用?C# Socket.SetToConnected使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Net.Sockets.Socket
的用法示例。
在下文中一共展示了Socket.SetToConnected方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateAcceptSocket
//
// CreateAcceptSocket - pulls unmanaged results and assembles them
// into a new Socket object
//
internal Socket CreateAcceptSocket(IntPtr fd, EndPoint remoteEP) {
//
// Internal state of the socket is inherited from listener
//
Socket socket = new Socket(fd);
socket.addressFamily = addressFamily;
socket.socketType = socketType;
socket.protocolType = protocolType;
socket.m_LocalEndPoint = m_LocalEndPoint;
socket.m_RemoteEndPoint = remoteEP;
//
// the socket is connected
//
socket.SetToConnected();
//
// if the socket is returned by an EndAccept(), the socket might have
// inherited the WSAEventSelect() call from the accepting socket.
// we need to cancel this otherwise the socket will be in non-blocking
// mode and we cannot force blocking mode using the ioctlsocket() in
// Socket.set_Blocking(), since it fails returing 10022 as documented in MSDN.
// (note that the m_AsyncEvent event will not be created in this case.
//
socket.m_BlockEventBits = m_BlockEventBits;
socket.SetAsyncEventSelect(AsyncEventBits.FdNone);
//
// the new socket will inherit the win32 blocking mode from the accepting socket.
// if the user desired blocking mode is different from the win32 blocking mode
// we need to force the desired blocking behaviour.
//
socket.willBlock = willBlock;
if (willBlock!=willBlockInternal) {
socket.InternalSetBlocking(willBlock);
}
return socket;
}
示例2: UpdateAcceptSocket
internal Socket UpdateAcceptSocket(Socket socket, EndPoint remoteEP)
{
// Internal state of the socket is inherited from listener.
socket._addressFamily = _addressFamily;
socket._socketType = _socketType;
socket._protocolType = _protocolType;
socket._rightEndPoint = _rightEndPoint;
socket._remoteEndPoint = remoteEP;
// The socket is connected.
socket.SetToConnected();
// if the socket is returned by an End(), the socket might have
// inherited the WSAEventSelect() call from the accepting socket.
// we need to cancel this otherwise the socket will be in non-blocking
// mode and we cannot force blocking mode using the ioctlsocket() in
// Socket.set_Blocking(), since it fails returing 10022 as documented in MSDN.
// (note that the m_AsyncEvent event will not be created in this case.
socket._willBlock = _willBlock;
// We need to make sure the Socket is in the right blocking state
// even if we don't have to call UnsetAsyncEventSelect
socket.InternalSetBlocking(_willBlock);
return socket;
}
示例3: UpdateAcceptSocket
internal Socket UpdateAcceptSocket(Socket socket, EndPoint remoteEP, bool needCancelSelect)
{
socket.addressFamily = this.addressFamily;
socket.socketType = this.socketType;
socket.protocolType = this.protocolType;
socket.m_RightEndPoint = this.m_RightEndPoint;
socket.m_RemoteEndPoint = remoteEP;
socket.SetToConnected();
socket.willBlock = this.willBlock;
if (needCancelSelect)
socket.UnsetAsyncEventSelect();
else
socket.InternalSetBlocking(this.willBlock);
return socket;
}