gpt4 book ai didi

c - Linux 中的奇怪开关

转载 作者:IT王子 更新时间:2023-10-29 00:59:10 25 4
gpt4 key购买 nike

我对 Linux 内核中的以下开关有一些疑问,有人可以解释一下最后一个 case,如果它是空的,为什么我还需要这个 case?提前致谢

switch (prev->state) {
case TASK_INTERRUPTIBLE:
if (unlikely(signal_pending(prev))) {
prev->state = TASK_RUNNING;
break;
}
default:
deactivate_task(prev, rq);
case TASK_RUNNING:
;
}

已编辑

我是从我正在学习的linux 2.4.18上拿来的,那里没有评论,为什么这样

最佳答案

如果 prev->state == TASK_RUNNING 并且您没有最后一种情况,那么 deactivate_task 将被调用,这在此处可能是不需要的。这只是为 TASK_INTERRUPTIBLE 做一些特别的事情以及为除 TASK_RUNNING 之外的所有其他状态做一些不同的事情的快速方法。

关于c - Linux 中的奇怪开关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5768929/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com