gpt4 book ai didi

c - sem_wait 和信号处理程序

转载 作者:可可西里 更新时间:2023-11-01 11:50:30 27 4
gpt4 key购买 nike

为什么 sem_wait 不能在信号处理程序中使用(特别是每个线程的 SIGSEGV 信号)?有人能给我一个应用程序崩溃的示例场景吗?我想 sem_wait 既是可重入又是线程安全,那么这里的问题是什么?为什么它不是异步安全

最佳答案

异步安全是比线程安全更严格的要求。您可以使用原语编写线程安全代码,以通过临界区保护全局数据。信号处理程序不能依赖于此。例如,您可能在 sem_wait 的关键部分内,同时执行导致段错误的操作。这会破坏 sem_wait 的线程安全保护。

关于c - sem_wait 和信号处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8493519/

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