多线程
一碗风
矫情的人
展开
-
C++多线程-第一篇-Atomic-原子操作
此系列基于Boost库多线程,但是大部分都在C++11中已经实现,所以两者基本一致。没什么特殊要求,练手还是C++11吧,方便不用配置。PS:Boost不愧为C++准标准库。本来不打算写,毕竟都是书上的内容,但是后来发现查书太麻烦,所以动手写了这个系列,帮助我只看代码使用多线程。才疏学浅,如有错误,请多多指教。:-DAtomic-原子操作(不可中断操作)原创 2016-11-12 15:17:07 · 8194 阅读 · 0 评论 -
C++多线程-第三篇-Thread(线程)
Thread//Boost#include#define BOOST_THREAD_VERSION 4 //使用最新版本,含有1,2,3但只是为了兼容之前程序。Thread库丰富强大的扩展功能但不在Thread中的未看。//C++11#include1.Thread_Class简析特点:1.线程对象需要一个可调用物,而调用函数的对象默认是拷贝传参原创 2016-11-12 16:34:59 · 20994 阅读 · 0 评论 -
C++多线程-第四篇-Thread_group(线程池)
thread_group--线程池Thread_group用于管理一组线程,类似一个线程池,使用std::list来荣纳创建的thread对象 Thread_group类摘要Class thread_group //不可拷贝{Public: Thread * create_thread(F threadFunc); //创建新线程 Void add_thread(thre原创 2016-11-12 16:41:18 · 4364 阅读 · 0 评论 -
C++多线程-第二篇-Mutex(互斥量)
//Boost#include#define BOOST_THREAD_VERSION 4 //使用最新版本,含有1,2,3但只是为了兼容之前程序。Thread库丰富强大的扩展功能但不在Thread中的未看。//C++11#include using namspace std; Mutex(互斥量)1.Mutex类基本作用: 互斥占有一个变量,一段时间内原创 2016-11-12 16:10:58 · 22544 阅读 · 0 评论 -
C++多线程-第六篇-C++11与Boost
本例讲述C++11中实现的Boost线程部分Atomic、mutex、thread、condition_variable等基本一致,只不过名称空间在std中,使用时分别需要加上,,,。线程等待与分离大致相同。C++11 mutex含mutex mu;/recursive_mutex ;/timed_mutex t_mu;/recursive_timed_mutex;原创 2016-11-12 17:16:02 · 1855 阅读 · 0 评论 -
C++多线程-第五篇-同步机制
Call_once使用call_once包装的函数在多线程中只会被执行一次。Void call_once(once_flag&flag, Callable && func,Args &&.....args);其中once_flag 声明必须是线程安全的,可采用static.且不可使用临时变量给Call_once. 条件变量--同步机制需要和互斥量配合使用。Thre原创 2016-11-12 16:46:25 · 1825 阅读 · 0 评论