HPP*_*PPY 3 c# asynchronous async-await
我尝试使用以下代码在线程池中运行某些任务:
private async void button1_Click(object sender, EventArgs e)
{
await test().ConfigureAwait(continueOnCapturedContext: false);
}
private Task test()
{
Thread.Sleep(100000);
return null;
}
Run Code Online (Sandbox Code Playgroud)
该代码应该在线程池中运行,但是当前的 UI 线程仍然被阻塞。
那么有人可以帮忙看一下吗?谢谢,
\n\n该代码应该在线程池中运行
\n
不,这根本不是真的。async不在线程池线程上运行您的代码。
我建议您阅读我的async简介,其中解释了它的async 作用,以及官方常见async问题解答,其中专门解决了线程池的误解:
\n\n\xe2\x80\x9casync\xe2\x80\x9d 关键字是否会导致方法的调用在线程池中排队?创建一个新线程?向火星发射火箭飞船?
\n不,不,而且不。
\n
| 归档时间: |
|
| 查看次数: |
3130 次 |
| 最近记录: |