public bool SendMessage(ProtocolMessage message) { var serializedMessage = message.Serialize(); var size = serializedMessage.Length; var task = channelTaskFactory.FromAsync( (callback, state) => socket.BeginSend(serializedMessage, 0, size, SocketFlags.None, callback, state), socket.EndSend, state: null); return(WaitSendOrReceiveTask(task, size)); }
public bool TrySend(ProtocolMessage message) { var buffer = message.Serialize(); return(socket.TrySendFrame(TimeSpan.FromSeconds(timeout), buffer)); }