som*_*guy 3 c# asynchronous async-await
Task t = Task.Run(async () => { await someAsyncMethod(); });
t.Wait();
Run Code Online (Sandbox Code Playgroud)
这是否意味着在t.Wait()等待的时候,线程被用于其他东西而不只是坐在那里等待任务完成?只是因为我用过async () => { await someAsyncMethod(); }?
Wait 将阻止调用线程.
要进行非阻塞等待,请使用await:
await Task.Run(async () => { await someAsyncMethod(); });
Run Code Online (Sandbox Code Playgroud)
但是,Task.Run通常只应该用于CPU绑定方法,所以你更有可能这样做:
await someAsyncMethod();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2698 次 |
| 最近记录: |