这个概念困扰了我很久,一直没有太明白,毕竟名字是一样的,今天这里来描述一下我对这两个线程的理解。
(1) 线程是CPU级别的,一个cpu核心支持一个线程(当然也可以虚拟核心)
(2) Java多线程并不是由于cpu线程数为多个才称为多线程,当Java线程数大于cpu线程数,操作系统使用时间片机制,采用线程调度算法,频繁的进行线程切换。
(3) 线程是操作系统最小的调度单位,进程是资源(比如:内存)分配的最小单位
(4)Java中的所有线程在JVM进程中,CPU调度的是进程中的线程