0

我正在浏览主要的调度功能:__schedule()并找到了一个代码片段:

if (!preempt && prev->state) {
        if (unlikely(signal_pending_state(prev->state, prev))) {
            prev->state = TASK_RUNNING;
    ...

现在,如果一个进程通过将自己保留在等待队列中来自愿抢占自己,为什么进程的状态再次变为TASK_RUNNING

4

0 回答 0