<mutex>注释 6: 函 pthread_cond_signal (),pthread_cond_broadcast (),线程限时等待后会醒来么及仍没有锁怎么办?概览本头文件中的类定义与类关系

(29) 函数 pthread_cond_signal ()

在这里插入图片描述

++ 本函数的使用举例,可以参看之前的例子,因为这些函数总是同时集中出现的。

(30)函数 pthread_cond_broadcast ()

在这里插入图片描述

++ 举例:

在这里插入图片描述
在这里插入图片描述

(31) 线程限时等待后会醒来么及仍没有锁怎么办? 先举例一个简单的例子,由易到难。下面的范例,没有使用限时等待。

在这里插入图片描述

++ 测试表明,线程即使使用了限时等待,等待条件变量的线程,也必须被条件变量唤醒且拿到了锁,才会从睡眠中醒来,继续执行线程里剩下的代码

在这里插入图片描述

++ 这个测试,对于理解 STL 库代码中的条件变量、线程等知识点,非常重要!!
++ 再给出一例,当给 wait_for ( ) 传入不合理的负数的时间值呢,测试表明,线程就不会睡眠等待了

在这里插入图片描述

++ 上述测试结果的源码支持为 :

在这里插入图片描述

++ 再来测试一下具有相同功能的 condition_variable 的成员函数 wait_unitl (…)

在这里插入图片描述

(32) 本 中类关系概览,概览本头文件中的类定义与类关系,这样便于查阅,可以简明扼要的了解这些类的功能与区别:

在这里插入图片描述

++ 以及:

在这里插入图片描述

(33)

谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值