无返回值的异步方法能否不用await

1、无返回值的异步方法能否不用await?

如果你不需要等待加一的操作完成,那就可以直接执行后面的操作。那要看你的需求了,如果你后面的操作必须在加一的操作后执行,那就要await了

2、请问C#中如何判断无返回值的await 方法是否执行成功?

我在调用.net自带的方法发送websocket消息,代码如下:

await socket.SendAsync(buffer, WebSocketMessageType.Text, true, CancellationToken.None);

这个方法签名是返回一个Task,

可是写成 Task t=await socket.SendAsync(...);会提示无法将void转换成Task;

我想通过await socket.SendAsync(...).Exception==null来判断是否发送成功,

可是if(await socket.SendAsync(...).Exception==null)会提示无法等待bool.

Task t = await socket.SendAsync(...)

改为

bool result = await socket.SendAsync(...)

待续

 
原文地址:https://www.cnblogs.com/yanglang/p/9602176.html