gpt4 book ai didi

c - 启用禁用中断和线程安全

转载 作者:行者123 更新时间:2023-11-30 14:56:24 25 4
gpt4 key购买 nike

在获取结果之前禁用中断并将 Post_Bits 清除为其原始状态 Post_Bits &= (~Post); 并测试特定 Post res = 的条件有何意义Post_Bits & Post; 以前见过。例如,如果 Post_Bits 用于另一个函数并且您在此处更改它,那么在禁用/启用中断内清除它是否会使其线程安全?

BOOL Post_a_Note(Post_t Post) // Post_t is a 32bit number
{
Post_t res; //Final Result
UINT16 capture = INTDisableInterrupts();
res = Post_Bits & Post;
Post_Bits &= (~Post);
INTRestoreInterrupts(capture);
return (res != 0);
}

最佳答案

禁用中断是确保代码片段在任何时候仅由一个线程执行的最简单方法。

关于c - 启用禁用中断和线程安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44714259/

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