【多线程与高并发】线程的优先级是怎么回事?

博客围绕多线程与高并发展开,重点介绍线程优先级。现代操作系统采用时分形式调度线程,线程优先级决定其分配处理器资源多少。Java线程用整型变量priority控制优先级,范围1 - 10,默认是5,不同JVM和系统线程规划有差异,部分系统会忽略设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

多线程与高并发目录:

【多线程与高并发】一、什么是线程?什么是进程?线程与进程的区别是什么?

【多线程与高并发】二、并发和并行的区别是什么?

【多线程与高并发】三、线程的优先级是怎么回事

【多线程与高并发】四、Java守护线程是什么

【多线程与高并发】五、线程的生命周期

【多线程与高并发】六、如何用线程池创建线程?Java线程池创建线程详解

【多线程与高并发】七、ThreadLocal关键字

【多线程与高并发】线程的优先级

现代 操作系统基本采用了时分的形式调度运行的线程,操作系统会分出一个个的时间片,线程会分配到若干时间片,当线程的时间片用完了就会发生线程调度,并等待着下次分配。

线程分配到的时间片多少也就决定了线程使用处理器资源的多少,而线程优先级是决定线程需要多或少分配一些处理器资源的线程属性。

总之,在Java线程中,**通过一个整型成员变量priority来控制优先级,优先级的范围从1-10,在线程构建的时候可以通过setPriority(int)方法来修改优先级,默认优先级是5,优先级高的线程分配的时间片的数量要多于优先级低的线程。设置线程优先级时,针对频繁阻塞(休眠或者IO操作)的线程需要设置较高优先级,而偏重计算(需要较多CPU时间)的线程则设置较低的优先级,确保处理器不会被独占。**在不同的JVM以及操作系统上,线程规划会存在差异,有些操作系统甚至会忽略对线程优先级的设定。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mind_programmonkey

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值