摘要: 等待一个事件 在多线程开发中,当一个线程的运行条件是另外一个线程的运算结果的时间,等待线程通常有几种处理方法1. 循环查询,知道满足条件为止 2. 休眠一个固定的时间,然后查询条件,当不满足的时候再继续休眠相同时间,知道下一次查询满足条件 3. 使用条件变量 下面分别对后两种方法进行阐述 休眠固定时 阅读全文
posted @ 2023-01-10 16:56 ^江流儿^ 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 保护共享数据的替代措施 互斥量是保护数据的一种通用错失,但并不是唯一错失,这里有很多的替代方法可以在一些特定的情况下,提供更加合适的保护 共享数据初始化过程的保护 假设对于一个共享源,构造的代价非常昂贵,在单线程中,通常采用延迟初始化的方法例子如下; shard_ptr<resource> reso 阅读全文
posted @ 2023-01-10 16:12 ^江流儿^ 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 使用互斥量保护共享数据 C++中使用互斥量 C++通过实例化std::mutex创建互斥量,通过调用成员函数lock()进行加锁,unlock()进行解锁,在实践中不推荐直接调用成员函数,因为调用成员函数就意味着,必须记住在每个函数的出口都需要调用unlock(),同时包括异常的情况,C++中推荐使 阅读全文
posted @ 2023-01-10 15:40 ^江流儿^ 阅读(48) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示
🚀
回顶
收起
  1. 1 404 not found REOL
404 not found - REOL
00:00 / 00:00
An audio error has occurred.