本文整理汇总了C#中System.Net.Sockets.Socket.InvokeAsyncMethod方法的典型用法代码示例。如果您正苦于以下问题:C# Socket.InvokeAsyncMethod方法的具体用法?C# Socket.InvokeAsyncMethod怎么用?C# Socket.InvokeAsyncMethod使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Net.Sockets.Socket
的用法示例。
在下文中一共展示了Socket.InvokeAsyncMethod方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OpenConnection
protected static SocketAsyncEventArgs OpenConnection(string host, ushort port)
{
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp) { ReceiveBufferSize = 4096 };
SocketAsyncEventArgs socketAsyncEventArgs = new SocketAsyncEventArgs { RemoteEndPoint = ResolveEndpoint(host, port), UserToken = new SocketAsyncEventArgsUserToken { Socket = socket } };
ManualResetEvent connectLock = new ManualResetEvent(false);
SocketError socketError = SocketError.Success;
EventHandler<SocketAsyncEventArgs> connectCallback = (sender, args) => { socketError = SocketError.Success; connectLock.Set(); };
socket.InvokeAsyncMethod(socket.ConnectAsync, connectCallback, socketAsyncEventArgs);
connectLock.WaitOne();
socketAsyncEventArgs.Completed -= connectCallback;
if (socketError != SocketError.Success)
throw new SocketException((int)socketError);
return socketAsyncEventArgs;
}
示例2: HandleFileTransfer
private void HandleFileTransfer(EventHandler<SocketAsyncEventArgs> callback, Action<string> connectedMethod, Action<string, Exception, SocketError?> errorMethod, Action<string, ulong, ulong> progressMethod, Action<string> finishedMethod, Func<string, bool> abortFunction)
{
ConnectedMethod = connectedMethod;
ErrorMethod = errorMethod;
ProgressMethod = progressMethod;
FinishedMethod = finishedMethod;
AbortFunction = abortFunction;
Socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp) { ReceiveBufferSize = RECEIVE_BUFFER_SIZE, SendBufferSize = SEND_BUFFER_SIZE };
SocketAsyncEventArgs = new SocketAsyncEventArgs { RemoteEndPoint = ResolveEndpoint(Host, Port), UserToken = new SocketAsyncEventArgsUserToken { Socket = Socket } };
Socket.InvokeAsyncMethod(Socket.ConnectAsync, callback, SocketAsyncEventArgs);
}