以下哪个方法可以使一个线程临时放弃CPU的执行权,让其他线程有机会执行?
答案解析
核心考点是线程的让步。`yield()`方法的作用是使当前线程放弃CPU的执行权,让其他线程有机会执行。`notify()`和`wait()`用于线程间的协作,`interrupt()`用于中断线程的阻塞状态,都不是让当前线程放弃CPU。
**解题思路:**
题目考察线程控制的方法。需要区分`yield`和`notify`, `wait`, `interrupt` 的功能。
**选项分析:**
* A. `notify()`:唤醒等待在对象监视器上的一个线程,不是放弃CPU执行权。
* B. `wait()`:使当前线程等待其他线程的通知,并释放对象监视器锁,也不是放弃CPU执行权。
* C. `yield()`:当前线程放弃CPU执行权,是正确答案的关键。
* D. `interrupt()`:中断一个线程的阻塞状态,不是放弃CPU执行权。
**易错点:**容易混淆`yield()`和`wait()`,`notify()`,`interrupt()`,需要明确`yield()`是让当前线程放弃CPU,但不会进入等待状态。
正确答案:C