ansync/await 运行流程图

1、流程图:

2、await 之后的方法是何时执行,如何执行的?

await 的方法在 Task 执行完成之后,通过调用 Finish 方法执行的。

具体的执行步骤是先将 MoveNext 方法注册到 Task 的回调里,然后在 Task 执行完后调用这个方法。

为什么 await 之后的代码会在不同的线程执行?

这个其实是因为 Task 的机制,Task 会被推到线程池里,由线程池挑选一个线程去执行,await 之后的代码其实是由这个线程去执行的,自然就跟 await 的之前的代码不是一个线程。

相关推荐
小贺儿开发2 小时前
Unity 程序员编曲花絮:汪峰《河流》细节修复
科技·学习·unity·程序员·音乐·demo·写代码
598866753@qq.com2 小时前
Unity UniText笔记
unity·unitext
longxiaozhang64 小时前
C#继承:让代码少写一点,偷懒的好方法
开发语言·c#
rockey6274 小时前
C#脚本引擎之AScript与DynamicExpresso对比
c#·.net·script·动态脚本
鼎艺创新科技14 小时前
不依赖 UE/Unity:我们如何从零搭建一套国产三维 GIS 渲染引擎
人工智能·算法·unity·游戏引擎·三维电子沙盘
Vae_Mars16 小时前
C#中的delegate委托
开发语言·c#
huihui36118 小时前
校友网管理软件技术选型框架:基于功能核验与系统架构的量化评估
unity·系统架构·游戏引擎
五仁烧饼18 小时前
Unity性能优化系列设置篇 - URP 移动端设置基线与分档策略
unity·游戏引擎
公子小六20 小时前
基于.NET的Windows窗体编程之WinForms音频控件
windows·microsoft·c#·.net·音视频·winforms
绿浪198421 小时前
c# 结构体 能不能直接封送检测
开发语言·c#