好吧,让我试着用句子来表达......
让我们考虑一个例子,我创建一个async
方法并用await
关键字调用它,据我所知,
- 主线程将被释放
- 在单独的线程中,异步方法将开始执行
- 一旦它被执行,指针将从它留在主线程中的最后一个位置恢复。
问题1:它会回到主线程还是一个新线程?
问题 2:如果 async 方法受 CPU 限制或网络限制,有什么区别吗?如果是,是什么?
重要的问题
问题 3:假设这是一个 CPU 密集型方法,我实现了什么?我的意思是 - 主线程被释放,但同时,另一个线程从线程池中使用。重点是什么 ?