java 线程模型
其实在jdk1.2之后,java所使用的线程模型就是系统线程模型。我们一般系统都是采用linux系统部署,linux系统提供的就是一对一线程模型。
这里也提一下其他的线程模型,如:用户线程,用户线程+轻量级进程混合使用等。感兴趣的同学可以自己查阅相关文档。这里主要介绍一下内核线程(一对一线程模型)
1:如果操作系统内核中包括了一个线程调度器(Scheduler) ,内核可以操作调度器对内核线程 进行调度,将线程任务映射到各个CPU上。那么,这样的内核就叫多线程内核 。
2:应用程序不能直接使用内核线程,只能去使用内核线程的一种高级接口 - 轻量级进程(LWP) 。对于编程语言来说,它们操作的实际上是这个LWP,LWP就是此时就可以被叫线程 。
3:轻量级进程 和线程 之间的映射关系是1:1的,所以,这种方式叫做一对一线程模型 。
提供如下图: