public void ScheduleAsyncAbort(int socket, Exception error) { _asyncOperationStates[socket] = error; _asyncOperationQueue.Enqueue(AsyncOperation.Abort(socket)); _unblockHandle.UnblockIfRequired(); }