1、C++11 多线程编程使用头文件<atomic> <thread> <mutex><condition_variable> <future>
2、编译C++多县城程序需要调用-lpthread (编译和链接时都需要)
3、C++11 多线程没有使用join()方法报错问题。在~thread();前没有调用join()则会遇到问题很难调试,如果不想调用join()等线程结束的话你可以调用detach().这样就不会遇到"terminate called whithout an active exception"
std::thread t(func);
t.detach();
4、异步操作并返回,使用std::future<返回类型> fi=std::async(std::launch::async,函数,参数...);
返回类型 result=f1.get();
5、使用原子类型可以实现无需加锁也能防止线程间抢占变
atomic_llong atomic_bool ...
也可以使用 atomic<T> 模版
6、线程局部存储:线程的局部变量只有在线程的生命周期类有有效以及只有线程内部可见。
浙公网安备 33010602011771号