pthread_cond_timedwait捕捉不到pthread_cond_signal的信号的原因

博客指出一个理解误区,当线程调用pthread_cond_signal时,若其他线程未处于pthread_cond_timedwait状态,信号会丢失,后续再调用pthread_cond_timedwait也不会触发。因此,使用pthread_cond_timedwait的线程应专注执行任务,避免处理其他逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一个理解误区,实际应用了那么久,突然发现了这个问题:

当一个线程调用pthread_cond_signal时,其他线程没有正在pthread_cond_timedwait,就会丢失该信号,后面再pthread_cond_timedwait不会再被触发。所以,pthread_cond_timedwait的线程需要专注做一件事,不能花时间在其他逻辑上。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值