public ClientSocket(object stateObject) { Buffer = new NeutralBuffer(); StateObject = stateObject; SendArgs = new SocketAsyncEventArgs(); SendArgs.Completed += Sent; ReceiveArgs = new SocketAsyncEventArgs(); ReceiveArgs.SetBuffer(Buffer.ReceiveBuffer, 0, Buffer.ReceiveBuffer.Length); ReceiveArgs.Completed += Received; ReceiveArgs.UserToken = this; }
public ClientSocket(int bufferSize, object stateObject = null) { Socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp) { NoDelay = true, Blocking = false, UseOnlyOverlappedIO = true }; Buffer = new NeutralBuffer(bufferSize); ReceiveArgs = new SocketAsyncEventArgs(); ReceiveArgs.Completed += Completed; ReceiveArgs.SetBuffer(Buffer.ReceiveBuffer); ReceiveArgs.UserToken = this; SendArgs = new SocketAsyncEventArgs(); SendArgs.Completed += Completed; SendArgs.SetBuffer(Buffer.SendBuffer); SendArgs.UserToken = this; StateObject = stateObject; }