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

电脑如何做网站空间心理服务网站建设内容

电脑如何做网站空间,心理服务网站建设内容,重庆网搜科技有限公司,宣传品牌网站建设1. 生产者线程 思路#xff1a;队列满了的情况下, 触发条件变量wait, 等待消费线程消费后唤醒继续生产. void ProducerThreadFunc() {while(1) { while(/* 容器已满 */) { /* 线程等待, 直到消费者消费后唤醒继续执行 */ }/* 生产动作 */ } }2. 消…1. 生产者线程 思路队列满了的情况下, 触发条件变量wait, 等待消费线程消费后唤醒继续生产. void ProducerThreadFunc() {while(1) { while(/* 容器已满 */) { /* 线程等待, 直到消费者消费后唤醒继续执行 */ }/* 生产动作 */ } }2. 消费者线程 思路 队列中没有元素可以被消费的情况下, 触发条件变量wait, 等待生产线程生产元素之后唤醒继续消费. // 伪代码 void ConsumerThreadFunc() {while(1) { while(/* 容器为空 */) { /* 线程等待, 直到生产者生产后唤醒继续执行 */ }/* 消费动作 */ } }3. 完整代码 #include iostream#include vector #include condition_variable #include mutex #include thread #ifdef __linux__ #include unistd.h #else #include windows.h #endifusing namespace std;void Run_EveryWhere_Sleep(int time) { #ifdef __linux__sleep(time); #else Sleep(time * 1000); #endif }class TestClass { public:int Exec(){std::thread thread_consumer(TestClass::ConsumerThreadFunc, this); std::thread thread_producer(TestClass::ProducerThreadFunc, this);thread_consumer.join();thread_producer.join();return 0;}void ProducerThreadFunc(){while(1) { // 使用while防止虚假唤醒 while(m_vecNums.size() 10) { std::cout Producer Thread Wait, Current Size m_vecNums.size() endl; unique_lockstd::mutex locker(m_mutex);m_cv.wait(locker); }int num rand();std::cout Produce One Number num std::endl; m_vecNums.emplace_back(num);m_cv.notify_all();Run_EveryWhere_Sleep(1);} }void ConsumerThreadFunc(){while(1) { // 使用while防止虚假唤醒 while(m_vecNums.size() 0) { std::cout Consumer Thread Wait, Current Size m_vecNums.size() endl; unique_lockstd::mutex locker(m_mutex);m_cv.wait(locker); }std::cout Consume One Number m_vecNums[m_vecNums.size() - 1] std::endl;m_vecNums.pop_back();m_cv.notify_all();Run_EveryWhere_Sleep(1);} }private:vectorint m_vecNums; /// 生产消费对象存储容器condition_variable m_cv; /// 条件变量mutex m_mutex; /// 配合条件变量使用 };int main(int argc, char **argv) {TestClass A;return A.Exec(); }4. 执行效果 [rootlocalhost condition_var_test]# g main.cpp -lpthread [rootlocalhost condition_var_test]# ./a.out Produce One Number Consumer Thread Wait, Current Size 1804289383 Produce One Number 846930886 Consume One Number 846930886 Produce One Number 1681692777 Consume One Number 1681692777 Produce One Number 1714636915 Consume One Number 1714636915 Produce One Number 1957747793 Consume One Number 1957747793 Produce One Number 424238335 Consume One Number 424238335
http://www.w-s-a.com/news/493322/

相关文章:

  • 门诊部网站建设天空建筑网站
  • 扬州市城乡建设网站高端品牌鞋子有哪些牌子
  • 杭州网站建设招聘网长沙网络销售公司
  • 网站制作一年多少钱免费做电子章网站
  • 信誉好的营销网站建设徐州市铜山新区建设局网站
  • 建行网站关于我们山西seo和网络推广
  • 1m带宽做网站怎么样深圳网站建设制作开发公司
  • 网站建设 服务内容 费用郴州网站建设公司哪里有
  • 网站关键词重要性育才网站建设
  • 网络安全形势下怎么建设学校网站wordpress最新主题下载
  • 自己建设网站需要什么条件.gs域名做网站怎么样
  • 网上做公益的网站推广手机卡返佣平台
  • 网站是公司域名是个人可以南京建设银行官方网站
  • 做互联网网站的会抓百度网盟推广 网站
  • 商务网站开发设计结论微信报名小程序怎么制作
  • 网站建设销售简历wordpress七比2
  • 制作网站报价工程项目查询哪个网站
  • 深圳移动网站建设制作公司网站建设的认识
  • 网站建设脚本语言有哪些想开网店哪个平台好
  • 视频网站用什么做的好深圳的小程序开发公司
  • 南京网站定制开发商城网站免费模板
  • 青海学会网站建设公司照片组合拼图
  • 中国建设银行福清分行网站爱站网权重查询
  • 外贸通网站建设网站建设7个主要流程图
  • 元气森林网络营销方式医疗网站优化怎么做
  • 手机网站制作报价表做网站公司做网站公司
  • 湖州网站设计吉林网站建设哪家好
  • 做存储各种环境信息的网站使用tag的网站
  • 阿里云用ip做网站网站开发员属于
  • 外链网盘下载南宁seo推广优化