Does code in a .NET Task ultimately run on a CPU or CPU Core via native Windows Thread?
本问题已经有最佳答案,请猛点这里访问。
参考下面的文章,这让人相信.NET任务执行时不涉及本机OS线程。这是真的吗?
任务(system.threading.task)和线程之间的差异
编辑
在回顾重复的问题时,我找不到直接解决这个问题的答案,而实例化.NET任务类最终将在本机OS线程上执行。它们指的是线程,但要么不区分托管和本机OS线程,要么只指托管线程。唯一可以复制的是我自己对其中一个问题的回答。
但在挖掘自己的过程中,似乎没有任何.NET的"魔力"可以避免本地操作系统线程。Windows内核不允许更改。这与我几十年前的操作系统经验是一致的。简而言之,没有任何人可以编写的应用程序代码不能在本机Windows OS线程上运行。
关于进程和线程托管线程
也:
Windows内核内部进程体系结构
Windows内核的体系结构
Windows内核体系结构的演变
答案是:视情况而定。
涉及一些计算工作的任务将在线程上运行,通常是来自线程池的线程。
长时间运行的任务,即使用选项
像