他正在通过他的帽子说话。没有Java线程调度算法。线程由操作系统安排,至少从1999年开始。
即使有,也没有任何明智的地方让你有机会重写它,而不是实现你自己的JVM。
问他怎么样。
我非常确定Java语言规范没有具体指定如何调度线程(即处于RUNNABLE状态的线程)。它可能需要某种公平性,但细节最有可能由JVM实现者来决定(这意味着你没有比所讨论的JVM更多的控制权)。
出于效率原因,大多数人可能会立即将任务推迟到操作系统。
我会看看能否找到一些参考资料。
您可以“调整”当然的调度,例如通过设置优先级(来自Thread上的文档: 每个线程都有优先权。具有较高优先级的线程优先于具有较低优先级的线程执行。 ),或通过使用监视器同步线程。