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

做翻译赚钱的网站汕头网页搜索排名提升

做翻译赚钱的网站,汕头网页搜索排名提升,沧州网站建设专业定制,专业建站公司怎么收费在做一些比较大的项目的时候,需要实现线程同步, 这里结合一个小示例,进行线程同步的讲解 问题定义 以下是一个使用 C 多线程和条件变量的示例,展示了线程 A 接收一个 enable 信号并通知线程 B 开始工作。线程 B 在开始工作之前…

在做一些比较大的项目的时候,需要实现线程同步, 这里结合一个小示例,进行线程同步的讲解

问题定义

以下是一个使用 C++ 多线程和条件变量的示例,展示了线程 A 接收一个 enable 信号并通知线程 B 开始工作。线程 B 在开始工作之前将 enable 信号设置为 false,然后执行其任务。

#include <iostream>
#include <thread>
#include <mutex>
#include <condition_variable>
#include <atomic>// 共享数据
std::atomic<bool> enable(false);
std::mutex mtx;
std::condition_variable cv;void threadA() {// 模拟接收 enable 信号std::this_thread::sleep_for(std::chrono::seconds(1));{std::lock_guard<std::mutex> lock(mtx);enable = true;}std::cout << "Thread A: enable signal received. Notifying thread B." << std::endl;cv.notify_one(); // 通知线程 B
}void threadB() {std::unique_lock<std::mutex> lock(mtx);// 等待 enable 信号cv.wait(lock, [] { return enable.load(); });std::cout << "Thread B: Received notification. Setting enable to false." << std::endl;enable = false; // 将 enable 信号设置为 false// 进行工作std::cout << "Thread B: Working..." << std::endl;std::this_thread::sleep_for(std::chrono::seconds(2)); // 模拟工作std::cout << "Thread B: Work done." << std::endl;
}int main() {std::thread tA(threadA);std::thread tB(threadB);tA.join();tB.join();return 0;
}

代码说明

  1. 共享数据
    • enable:使用 std::atomic<bool> 进行原子操作,确保线程安全。
    • mtx:互斥锁,用于保护共享数据。
    • cv:条件变量,用于线程之间的同步。
  2. **threadA**** 函数**:
    • 模拟接收 enable 信号。
    • 设置 enabletrue,表示信号已接收。
    • 通知线程 B。
  3. **threadB**** 函数**:
    • 等待 enable 信号。条件变量 cv.wait 保证线程在 enabletrue 之前不会继续执行。
    • 在接收到通知后,将 enable 设置为 false
    • 执行其任务。
  4. **main**** 函数**:
    • 创建并启动线程 A 和线程 B。
    • 等待线程 A 和线程 B 完成。

这个示例展示了如何使用条件变量和原子变量进行线程间的同步和数据共享。

http://www.yidumall.com/news/86241.html

相关文章:

  • 网站制作行业越来越难做系统优化软件有哪些
  • 苹果的网站怎么做的关键字排名优化公司
  • 互联网登录的网站名营销型企业网站制作
  • wordpress2014宁波优化网站排名软件
  • wordpress手机视频主题优化推广服务
  • 四川建设人才考试网官方网站企业宣传推广方案
  • 哪个做简历的网站可以中英的请你设计一个网络营销方案
  • 网站开发团队需要几个人百度移动端关键词优化
  • 做网站包括图片设计吗seo服务哪家好
  • 网站做搜索要用数据库吗惠州百度推广排名
  • php+mysql网站开发教程网络营销系统
  • 90设计网站创建时间外贸营销系统
  • 顺义网站建设广东深圳疫情最新消息今天
  • wordpress自动采集更新seo免费诊断
  • 互联网营销 网站 推荐电商网站运营
  • 免费申请账号网站百度如何发布信息推广
  • 一级a做爰片免费网站提升网站权重的方法
  • 建设厅官方网站下载专区公司建设网站哪家好
  • 备案网站多少钱新闻源
  • 深圳微信分销网站建设整合营销是什么
  • 旅游便宜的网站建设seo优化招聘
  • 网站图片自动切换怎么做大型网站建设平台
  • 昆明网站制作成都seo
  • 深圳工商注册咨询服务热线aso优化技巧
  • 做sohu最好的推广网站网络营销评价的名词解释
  • wordpress single catseo1新地址在哪里
  • 坪山网站建设要多少钱广点通官网
  • 化妆品网站设计毕业论文优化步骤
  • 网站开发工具比较seo都用在哪些网站
  • 企业邮箱在哪查看seo管理软件