我有以下功能
public static Task<int> SendTaskAsync(this Socket socket, byte[] buffer, int offset, int size, SocketFlags flags)
{
AsyncCallback nullOp = (i) => { };
IAsyncResult result = socket.BeginSend(buffer, offset, size, flags, nullOp, socket);
// Use overload that takes an IAsyncResult directly
return Task.Factory.FromAsync(result, socket.EndSend);
}
但是我得到了
FromAsync上的“无法从群组中选择方法”
错误。我的代码应该如何?我是TAP的新手
答案 0 :(得分:3)
改变这个:
return Task.Factory.FromAsync(result, socket.EndSend);
进入这个:
return Task<int>.Factory.FromAsync(result, socket.EndSend);
编辑:
正如@cremor所说,您也可以使用:
return Task.Factory.FromAsync<int>(result, socket.EndSend);