public override Task<byte[]> Recv()
{
if (this.Id == 0)
{
throw new Exception("UChannel已经被Dispose, 不能接收消息");
}
TaskCompletionSource<byte[]> tcs = new TaskCompletionSource<byte[]>();
var recvQueue = this.socket.RecvQueue;
if (recvQueue.Count > 0)
{
tcs.SetResult(recvQueue.Dequeue());
}
else
{
recvTcs = tcs;
}
return tcs.Task;
}