C++11多线程
奋斗的大庆
勤劳一日,可得一夜安眠;勤劳一生,可得幸福长眠;只有尝过苦的滋味才会更加珍惜甜
展开
-
线程池还没运行完毕 main函数就结束了
例子:本应该执行30次,结果执行了9次就结束了#include <iostream>#include <chrono>#include "ThreadPool.hpp"class Test{public: void fun1() { std::cout <<"No paras "<< "working in thread " << std::this_thread::get_id() << std::endl;原创 2021-01-08 21:37:35 · 1219 阅读 · 0 评论 -
【C++11多线程】多线程之生产者与消费者
参考1.https://www.cnblogs.com/pandamohist/p/13852197.html原创 2020-12-31 19:27:45 · 301 阅读 · 0 评论 -
【C++11多线程】线程池原理与实践
索引目录原创 2020-12-31 18:35:19 · 391 阅读 · 0 评论 -
【C++11多线程】有/无锁的并发数据结构设计
https://downdemo.gitbook.io/cpp-concurrency-in-action-2ed原创 2020-12-28 10:54:46 · 209 阅读 · 0 评论 -
【C++11多线程】原子操作<atomic>
索引1 头文件结构2 std::atomic代码网址:https://github.com/jorionwen/threadtest1 头文件结构头文件:原子类型是封装了一个值的类型,它的访问保证不会导致数据的竞争,并且可以用于在不同的线程之间同步内存访问。这个头声明了两个c++类,原子和atomic_flag,它实现了自包含类中的原子类型的所有特性。header还声明了整个C样式类型和函数与C中的原子支持兼容。头文件中结构定义查看。头文件的结构:atomic 用于bool、整数和指针类型的原子转载 2020-12-28 10:53:05 · 1380 阅读 · 1 评论 -
【C++11多线程】线程结果future
索引一级目录二级目录参考一级目录二级目录参考原创 2020-12-28 10:13:19 · 539 阅读 · 0 评论 -
【C++11多线程】线程同步
索引1 condition variable2 future参考一个线程要等待另一个线程完成任务,确定完成任务的方法有几种。第一种是持续检查mutex,这种方法显然很浪费资源;第二种是每隔一段时间进行一次检查;第三种方案是使用条件变量(condition variable)1 condition variable标准库对条件变量提供了两种实现:std::condition_variable和std::condition_variable_any,前者仅限和std::mutex工作,而后者可以与任何满足原创 2020-12-28 09:29:47 · 696 阅读 · 0 评论 -
【C++11多线程】线程锁保护共享数据
索引目录原创 2020-12-23 16:13:41 · 1386 阅读 · 1 评论 -
【C++11多线程】管理线程
索引目录1.使用不带参数的函数创建线程2.带参数的函数创建线程3.函数对象—即仿函数(functor)—创建线程4.成员函数创建线程5. 成员函数创建线程(在构造函数中操作)6.lambda创建线程4.join and detach5.线程的标识参考线程创建:std::thread threadObj(<CALLBACK>);std::thread()创建一个新的线程可以接受任意的可调用对象类型(带参数或者不带参数),包括lambda表达式(带变量捕获或者不带),函数,函数对象,以及函数原创 2020-11-04 18:54:22 · 308 阅读 · 0 评论