乐趣区

线程会存在一条代码语句执行到一半就让出CPU的情况

微信公众号:51 码农网
专业编程问答社区
www.51manong.com

列如:system.out.println (“hello world”)。在 linux 环境,会出现线程刚执行到.out 的时候时间片用完,让出 CPU。CPU 在 windows 下是抢占式的,所以一个线程抢到 CPU,就能跑跑跑。而 linux 是分时的,一个线程分到多少时间,执行几个指令后就要让渡 CPU 给其他线程或进程。

system.out.println (“hello world”) 到了 CPU 层面可能会变成好几条机器码,假设是 10 条机器码,那么就一定会存在执行了前 5 条机器码后切换线程的情况,也就是这条 Java 语句执行了一部分就让出了 CPU

退出移动版