CPU核心数和线程数的关系
核心数:线程数 = 1:1
intel引入超线程技术之后--》 核心数:线程数 = 1:2
CPU时间片轮转机制-又称RR 调度
时间片轮转法(Round-Robin,RR)主要用于分时系统中的进程调度。为了实现轮转调度,系统把所有就绪进程按先入先出的原则排成一个队列。新来的进程加到就绪队列末尾。每当执行进程调度时,进程调度程序总是选出就绪队列的队首进程,让它在 CPU 上运行一个时间片的时间。时间片是一个小的时间单位,通常为 10~100ms 数量级。当进程用完分给它的时间片后,系统的计时器发出时钟中断,调度程序便停止该进程的运行,把它放入就绪队列的末尾;然后,把 CPU 分给就绪队列的队首进程,同样也让它运行一个时间片,如此往复。
什么是进程和线程
进程:程序运行资源分配的最小单位,进程内部有多个线程,会共享这个进程的资源
线程:CPU调度的最小单位,必须依赖进程而存在。
并行和并发
并行:同一时刻,可以同时处理事情的能力
并发:与单位时间相关,在单位时间内可以处理事情的能力
举例:
并行:卖奶茶的地方,有三个队伍卖奶茶,这时候我们说并行为3,强调同时
并发:卖奶茶的地方,只有一个队伍卖奶茶,队伍的长度为并发,强调在某段时间内,处理事情的能力
高并发编程的优缺点
优点:可以充分的利用cpu的资源、加快用户响应的时间,程序模块化,异步化。
缺点:
1. 多线程共享资源,多线程之间存在冲突。
2. 容易导致计算机死锁。
3. 启用太多的线程,容易导致机器宕机。
标签:java,队列,编程,调度,并发,线程,进程,CPU From: https://blog.51cto.com/u_14906615/5899431