cpu个数、核数、线程数、Java多线程关系综合

查看电脑逻辑核心数:

点"性能"选项卡,可以看到CPU使用记录,下面有几个框就代表有逻辑核心几个核心。如下图分别代表逻辑四核心

cpu个数、核数、线程数、Java多线程关系综合_第1张图片

  4核心

查看物理核心数:

NumberOfCores的值,数值为几即为物理核心几核心。

NumberOfLogicalProcessors的值,数值为几即为逻辑核心几核心。

综上:本电脑双核四线程:cpu物理上只有两个核心,但每个核心模拟成两个逻辑核心.

 

一 cpu个数、核数、线程数的关系

cpu个数:是指物理上,也及硬件上的核心数;

核数:是逻辑上的,简单理解为逻辑上模拟出的核心数;一个CPU核心数模拟出2线程的CPU

线程数:是同一时刻设备能并行执行的程序个数,线程数=cpu个数 * 核数,及程数=cpu个数(2) * 核数(2)=4

二 cpu线程数和Java多线程

(1) 线程是CPU级别的,单个线程同时只能在单个cpu线程中执行

(2)ava多线程并不是由于cpu线程数为多个才称为多线程,当Java线程数大于cpu线程数,操作系统使用时间片机制,采用线程调度算法,频繁的进行线程切换。

(3) 线程是操作系统最小的调度单位,进程是资源(比如:内存)分配的最小单位

(4)Java中的所有线程在JVM进程中,CPU调度的是进程中的线程

 

 

你可能感兴趣的:(java)