private static void InvokeSocketOperationCallback(SocketOperationResult result) { SocketOperationCallback callback = result.callback; if (null == callback) { return; } try { callback(result); } catch (Exception) { } }
private static void SocketRecv(Socket sock, byte[] buf, int offset, int size, bool waitAll, SocketOperationCallback callback, object state) { SocketOperationResult result = PrepareSocketOperationResult(sock, false, buf, offset, size, waitAll, callback, state); SendRecvNext(result); }
private static SocketOperationResult PrepareSocketOperationResult(Socket sock, bool directionOut, byte[] buf, int offset, int size, bool waitAll, SocketOperationCallback callback, object state) { SocketOperationResult result = new SocketOperationResult(); result.sock = sock; result.directionOut = directionOut; result.buf = buf; result.offset = offset; result.size = size; result.waitAll = waitAll; result.callback = callback; result.state = state; return(result); }
private static void SocketSend(Socket sock, byte[] buf, int offset, int size, SocketOperationCallback callback, object state) { SocketOperationResult result = PrepareSocketOperationResult(sock, true, buf, offset, size, true, callback, state); SendRecvNext(result); }