1. std::thread
std::thread为C++11的线程类,使用方法和boost接口一样,非常方便,同时,C++11的std::thread解决了boost::thread中构成参数限制的问题,我想这都是得益于C++11的可变参数的设计风格。
我们通过如下代码熟悉下std::thread使用风格:
1//c11.cpp
2#include <iostream>
3#include <thread>
4void threadfun1()
5{
6 std::cout << "threadfun1 - 1\r\n" << std::endl;
7 std::this_thread::sleep_for(std::chrono::seconds(1));
8 std::cout << "threadfun1 - 2" << std::endl;
9}
10void threadfun2(int iParam, std::string sParam)
11{
12 std::cout << "threadfun2 - 1" << std::endl;
13 std::this_thread::sleep_for(std::chrono::seconds(5));
14 std::cout << "threadfun2 - 2" << std::endl;
15}
16int main()
17{
18 std::thread t1(threadfun1);
19 std::thread t2(threadfun2, 10, "abc");
20 t1.join();
21 std::cout << "join" << std::endl;
22 t2.d