private static void SendCompleted(SocketAsyncEventArgs e, SocketAwaitable awaitable) { // Clear buffer(s) to prevent the SetBuffer buffer and BufferList from both being // set for the next write operation. This is unnecessary for reads since they never // set BufferList. if (e.BufferList != null) { e.BufferList.Clear(); e.BufferList = null; } else { e.SetBuffer(null, 0, 0); } awaitable.Complete(e.BytesTransferred, e.SocketError); }