是什么让线程的执行顺序变得不可预测?

Rne*_*net 9 java multithreading operating-system

是什么让线程的执行顺序变得不可预测?调度程序是否在某个时候使用随机数或检查系统资源,或者查看哪个线程等待了足够长的时间或......?

Ern*_*ill 10

调度程序通常是OS的调度程序.它受到许多因素的影响,包括机器上的其他进程正在做什么,硬件正在做什么(中断)等.根据操作系统的不同,我认为有时可能会涉及随机数,但我一般不怀疑.更多只是多变量时间间隔可以重叠的不可预测的方式.