在list_for_each_entry中使用break是否安全?

时间:2012-07-23 16:20:57

标签: c linux-kernel

while/for指令内部(在Linux内核中)使用list_for_each_entry循环的中断指令是否安全?

以示例:

list_for_each_entry(obj1, vars, list) {
    ...
    while(j < k)
    {
        ...
        if(k >= MAX_ITERATIONS) break; // break the while
        ...
    }
    ...
}

while循环是否会按预期被破坏或list_for_each_entry会被破坏吗?

1 个答案:

答案 0 :(得分:9)

break 始终仅突破最内层循环,因此外部循环不受影响。实际上,要打破多级循环,必须使用goto