linux下三种实现线程模型的方式:
M to one :
线程在用户空间,内核感知不到,这样所有关于线程的一切操作可以在用户空间下做,包括创建,消除,上下文切换,以及加解锁,效率很高。
缺点也显而易见:当当前某个线程因为特定事件,比如IO等待时,就会出现所有线程全部阻塞住,因为,内核能看到的只有进程,而无法对进程进行切换。one to one:
M to N:
linux下三种实现线程模型的方式:
M to one :
线程在用户空间,内核感知不到,这样所有关于线程的一切操作可以在用户空间下做,包括创建,消除,上下文切换,以及加解锁,效率很高。
缺点也显而易见:当当前某个线程因为特定事件,比如IO等待时,就会出现所有线程全部阻塞住,因为,内核能看到的只有进程,而无法对进程进行切换。
one to one:
M to N: