当前位置: 首页 > news >正文

网站文件夹权限win7 发布asp网站

网站文件夹权限,win7 发布asp网站,福州网站设计费用,自助个人网站一#xff1a;概述#xff1a; 在 C 中#xff0c;条件变量#xff08;std::condition_variable#xff09;是一种用于线程间同步的机制#xff0c;主要用于在多线程环境中让一个线程等待某个条件满足后再继续执行。条件变量通常配合互斥锁#xff08;std::mutex#…一概述 在 C 中条件变量std::condition_variable是一种用于线程间同步的机制主要用于在多线程环境中让一个线程等待某个条件满足后再继续执行。条件变量通常配合互斥锁std::mutex使用保证了在访问共享数据时不会发生竞态条件。 二条件变量的用途 条件变量用于在某个线程等待另一个线程满足特定条件时进行同步。这通常用于以下几种情况 生产者-消费者问题当缓冲区为空时消费者线程等待生产者线程生产数据当缓冲区满时生产者线程等待消费者线程消费数据。线程池工作线程等待任务队列中有任务可处理。任务调度线程等待其他线程完成某些前置任务。 三条件变量的工作原理 等待条件线程可以在条件变量上等待直到某个条件成立例如某个标志被设置。通知条件当某个线程修改共享数据并满足条件时它可以通过条件变量通知等待的线程通常使用 notify_one() 或 notify_all() 方法。 四核心方法 wait让当前线程等待直到满足指定条件。在调用 wait 时条件变量会自动释放与之关联的互斥锁等待条件满足后再重新获取锁。notify_one唤醒一个在条件变量上等待的线程。如果没有线程在等待它什么也不做。notify_all唤醒所有在条件变量上等待的线程。 五条件变量的使用注意事项 避免虚假唤醒条件变量的 wait 方法会有可能被虚假唤醒即条件未改变时线程被唤醒。因此通常需要在 wait 语句中使用一个循环来检查条件 while (!condition) {cv.wait(lock); }锁的管理wait 会释放互斥锁并进入休眠状态直到被通知并且重新获得锁。使用 std::unique_lock 管理锁是推荐的做法因为它支持锁的自动管理。notify_one vs notify_allnotify_one() 只会唤醒一个线程而 notify_all() 会唤醒所有等待的线程。根据需要选择使用哪一个方法通常只有一个线程需要继续时使用 notify_one()而如果有多个线程依赖于同一条件时则可能需要使用 notify_all()。 六示例 #include condition_variable #include iostream #include thread #include mutexbool dataReady false; std::mutex mutex_; std::condition_variable condVar1; std::condition_variable condVar2; int counter 0; int COUNTLIMIT 50; void setTrue() {while (counter COUNTLIMIT){std::unique_lockstd::mutex lck(mutex_);condVar1.wait(lck, [] {return dataReady false; });dataReady true; counter;std::cout dataReady \n;condVar2.notify_one();} }void setFalse() {while (counter COUNTLIMIT) // 循环直到 counter 达到 COUNTLIMIT{std::unique_lockstd::mutex lck(mutex_); // 获取互斥锁保护共享数据condVar2.wait(lck, [] {return dataReady true; }); // 等待条件变量直到 dataReady 为 truedataReady false; // 修改 dataReady 为 falsestd::cout dataReady \n; // 输出 dataReady 的值即 falsecondVar1.notify_one(); // 唤醒另一个线程通知它继续执行} }int main() {std::cout std::boolalpha \n; std::cout Begin: dataReady \n; std::thread t1(setTrue);std::thread t2(setFalse);t1.join();t2.join();dataReady false;std::cout End: dataReady \n;std::cout \n;return 0; }
http://www.hkea.cn/news/14411399/

相关文章:

  • 网站建设微站重庆做木门网站公司
  • 南京高端网站建设大气的化妆品网站名
  • 个人建站免费服务器郑州网站托管助企
  • 搭建网站 优帮云网站打开加速
  • asp.net网站建设ppt邯郸做网站找哪家好
  • 怎么制作网站域名wordpress 在线阅读pdf
  • 长葛哪里有做网站的淮北做网站电话
  • 可以做微课PPT模板 网站vs2013 网站开发
  • 05网站做网站有什么关于财务的问题
  • 网络建站工具wordpress没有图片
  • 建设网站能自学吗jquery上传wordpress
  • 郑州网站优化网络建设有限公司旧家电回收网站开发
  • 奇搜建设辽沈阳网站网站设计公司服务
  • 小企业网站建设新市场报价仿站工具哪个好最好
  • 在线商城网站制作北京哪里做网站
  • 河南省商丘网站网软志成企业网站管理系统
  • 什么网站可以免费推广wordpress 4.9.1
  • 网站网站建设哪家便宜中山精品网站建设市场
  • 上海网站的建设wordpress购买邀请码
  • 网站结构有哪些类型欧亚专线荷兰快递单号查询
  • 大型网站外链是怎么建设的教资注册网站
  • 工商注册网站模板wordpress文章关键字怎么添加
  • 网站不备案支付宝接口建网站要多少钱一个
  • 网站维护多久能好北京建设工程网
  • 自己做网站 教程旅游网站怎么建设
  • 湛江市研发网站建设在新西兰做兼职的网站
  • 万链网站做的怎么样?什么是网络设计制作
  • 旅游网站设计开题报告wordpress页面侧菜单
  • 网站建设市场行情报价莱芜征婚吧
  • 网站报错401网站建设与维护好学吗