gpt4 book ai didi

multithreading - 线程安全与异步信号安全

转载 作者:行者123 更新时间:2023-12-03 13:00:48 26 4
gpt4 key购买 nike

在APUP第12.5节中,提到:


如果一个函数相对于多个线程是可重入的,那么我们说它是线程安全的。但是,这并没有告诉我们函数是否相对于信号处理程序是可重入的。”

我感到困惑的是,为什么一个函数是线程安全的,但可能不是异步信号安全的。

有例子吗?

谢谢

最佳答案

通过使用互斥锁保护函数修改的状态,可以使该函数成为线程安全的。但是,这不是异步信号安全的,因为如果您调用此函数,例如从信号处理程序中,程序可能会死锁。

具有此属性的常用函数是malloc()。

关于multithreading - 线程安全与异步信号安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9512775/

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