我注意到,它经常发生表达式:“系统线程”。这究竟意味着什么呢?特别是,我无法想象不是-system线程。只是,系统必须知道线程。操作系统(调度程序)切换上下文,所以他必须知道它!
例如,在第四页中,它是关于系统线程的:http://www.dabeaz.com/python/GIL.pdf。
发布于 2017-03-06 21:08:47
系统线程是操作系统提供的东西。操作系统内核负责系统线程的调度。如果运行时提供类似线程和调度程序的内容,那么您就有了非系统线程。这些常被称为绿色线程。有时,非系统线程更高效,或者系统不提供线程。对于Python,非系统线程的示例将由小绿或盛事提供。
发布于 2017-03-06 21:08:59
线程是操作系统的一个构造,而操作系统本身只是一个程序,因此如果它们愿意,可以在操作系统之上的另一个程序中实现线程调度程序(通常不会重新发明线程)。相关组件可能包括一些中断机制、内存管理器(用于虚拟化内存分配)和每个线程的指令指针优先级队列。
发布于 2017-03-06 21:10:16
绿色线程、事件循环、协作多任务和协同的概念通常是指非系统线程。
它本质上是指构造程序的方法,这样我们就可以让线程被另一个任务使用,而不是阻止线程执行IO之类的事情。
当我们放置一个本机线程时,操作系统可以安排另一个线程使用该CPU。使用协作多任务处理方法,也可以让应用程序选择下一步要执行的任务。
https://stackoverflow.com/questions/42635349
复制相似问题