当一个线程调用yield()方法时,它放弃当前CPU的使用权,让同等或更高优先级的线程执行。调用yield()方法并不会使线程进入阻塞状态,而是让线程重新进入就绪状态,等待CPU资源重新分配。
执行流程如下:
因此,yield()方法可以用来协调线程之间的执行顺序,但并不保证线程A调用yield()方法后立即就会执行线程B,具体执行顺序还受到系统调度器的影响。