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

手机兼职赚钱平台学生党seo营销服务

手机兼职赚钱平台学生党,seo营销服务,代理网站备案收钱,wordpress 链接修改使用 condition_variable::wait(unique_lock<mutex>&lck, Predicate pred) 时&#xff0c;必须保证条件变量通过notify唤醒的同时&#xff0c;wait 的第二个参数 Predicate 返回 true 了才可以往下走。必须两个条件同时满足&#xff0c;如果notify的时候Predicate返回…

 使用 condition_variable::wait(unique_lock<mutex>&lck, Predicate pred) 时,必须保证条件变量通过notify唤醒的同时,wait 的第二个参数 Predicate 返回 true 了才可以往下走。必须两个条件同时满足,如果notify的时候Predicate返回时false一样的唤不醒线程。

#include <iostream>
#include <future>
#include <chrono>
#include <string>
#include<functional>
#include <queue>using Task = std::function<void()>;
class ThreaPool
{
public:void start() {running_ = true;}bool is_running(){return running_;}void stop() {std::cout << "stop..." << std::endl;running_ = false;std::unique_lock<std::mutex> lk(qmutext_);tasks_.push([]() { std::cout << "hello pool end " << std::endl;  });cond_.notify_all();}void push_task(Task task) {if (!running_){return;}std::unique_lock<std::mutex> lk(qmutext_);tasks_.push(task);cond_.notify_one();}ThreaPool(int count){for (int i = 0; i < count; i++){pool_.emplace_back([this]() {while (true){Task task;{std::unique_lock<std::mutex> lk(qmutext_);std::cout << "wait 1" << std::endl;cond_.wait(lk, [this] {return !running_ || !tasks_.empty(); });std::cout << "wait 2" << std::endl;if (!tasks_.empty()){task = std::move(tasks_.front());tasks_.pop();}}if (task){task();}if (!this->is_running()){std::cout << "stoped 1" << std::endl;std::unique_lock<std::mutex> lk(qmutext_);if (tasks_.empty()) {std::cout << "stoped 2" << std::endl;return;}}}});}}~ThreaPool() {for (std::thread& worker : pool_) {worker.join();}};private:std::vector<std::thread> pool_;std::mutex qmutext_;std::condition_variable cond_;std::queue< Task > tasks_;std::atomic_bool running_{ true };
};int main()
{ThreaPool pool(5);std::this_thread::sleep_for(std::chrono::seconds(1));pool.push_task([]() { std::cout << "hello pool 1 \n" << std::endl;  });pool.push_task([]() { std::cout << "hello pool 2 \n" << std::endl;  });pool.push_task([]() { std::cout << "hello pool 3 \n" << std::endl;  });pool.push_task([]() { std::cout << "hello pool 4 \n" << std::endl;  });pool.push_task([]() { std::cout << "hello pool 5 \n" << std::endl;  });pool.push_task([]() { std::cout << "hello pool 6 \n" << std::endl;  });pool.push_task([]() { std::cout << "hello pool 7 \n" << std::endl;  });pool.push_task([]() { std::cout << "hello pool 8 \n" << std::endl;  });pool.push_task([]() { std::cout << "hello pool 9 \n" << std::endl;  });std::this_thread::sleep_for(std::chrono::seconds(1));pool.stop();return 0;
}

http://www.dinnco.com/news/68790.html

相关文章:

  • 网站是什么公司做的百度识图网页版
  • 网站样式模板站长之家排行榜
  • 低价网站设计多少钱推广方案应该有哪些方面
  • 自己做网站卖东西怎么做网络销售
  • 教你做吃的网站营销网页设计公司
  • 肇庆网站建设公司宁波seo排名公司
  • 济南微信网站建设磁力蜘蛛
  • dede网站打开慢中层管理者培训课程有哪些
  • 沈阳市城乡建设局网站互联网营销师培训内容
  • 如何做网站编辑 沒技术软文范例大全200字
  • 普洱北京网站建设百度下载安装最新版
  • 怎么在公司网站做超链接六种常见的网站类型
  • 湖南做旅游网站seo优化是什么意思
  • 广州微网站建设价位站长之家域名查询鹿少女
  • 宁河做网站公司百度怎么优化网站排名
  • 新网站建设seo排名专业公司
  • 电商网站里的水果图片怎么做的如何做外贸网站的推广
  • 哪个网站可有做投票搭建网络推广外包业务怎么样
  • 哪里有做阿里网站的商家联盟营销方案
  • 上海企业服务公司对网站外部的搜索引擎优化
  • 宁夏做网站百度搜索工具
  • 有没有做那事的网站3分钟搞定网站seo优化外链建设
  • 连云港做电商网站的公司百度推广关键词
  • 做书的网站成都纯手工seo
  • 嘉盛建设集团网站定制开发公司
  • 沈阳市和平区网站建设网络推广策划
  • 信阳做网站推广信阳网站建设河南百度推广电话
  • 网站租用服务器费用最新国际新闻事件
  • 网站登录界面图片用什么软件做电商网站
  • 泉州营销型网站设计国外免费发产品的b2b平台