Alexanderise
2019-05-25 21:30
采纳率: 100%
浏览 1.3k
已采纳

Java 之 当一个线程在执行死循环时另一个线程会得不到CPU吗?

若一个进程中有两个线程,其中之一是一个while(true)死循环,另一个线程会不会得不到CPU而不执行呢?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • threenewbee 2019-05-26 00:11
    已采纳

    现在的操作系统都是抢占式的,换一句话说,就算你只有1个cpu,当一个线程执行超过一段时间,操作系统都会强迫它终止,并且调度别的线程执行。
    当然别的线程能多大限度上得到调度,这个取决于线程的优先级,如果优先级很低,那么会很久很久才能得到调度。
    当然,如果你系统本身有多个cpu的话,那么(长时间)得不到cpu的机会就更少了。

    评论
    解决 无用
    打赏 举报
查看更多回答(2条)

相关推荐 更多相似问题