public static void yield()

官方API里对这个方法有一个描述:

对调度程序的一个暗示,即当前线程愿意产生当前使用的处理器。调度程序可以自由地忽略这个提示。

产量是一种启发式尝试,以改善否则会过度利用CPU的线程之间的相对进度。其使用应与详细的分析和基准相结合,以确保其具有预期的效果。

很少使用这种方法。它可能对调试或测试有用,可能有助于根据种族条件重现错误。在设计并发控制结构(例如java.util.concurrent.locks包中的并行控制结构)时也可能有用。

总结:

很少使用,如果你觉得一个线程不那么重要,或者优先级非常低,而且又害怕它会占用太多的CPU资源时适用;

一旦被执行,它会使当前线程让出cpu,但并非表示当前线程不执行了,

它会使当前线程从执行状态(运行状态)变为可执行态(就绪状态)。

results matching ""

    No results matching ""