void Send(byte[] array, int offset, int count) { var stream = socket.GetStream(); if (stream.CanWrite) { stream.BeginWrite(array, offset, count, (s) => { stream.EndWrite(s); }, null); } }