01 Hello, world of concurrency in C++

C++ Concurrency in Action 2nd Edition note

        为什么使用并发?关注点分离(SoC)和性能。收益大于付出时才使用并发。
        native_handle() 将线程转换为平台相关句柄。

#include
#include
void hello(){
    std::cout<<”hello concurrent world\n”;
}
int main(){
    std::thread t(hello);
    t.join();
}

        每个线程都有一个初始函数,主线程的初始函数是main()。这里新线程的初始函数是hello()
        新线程开始后,主线程继续执行。(主线程是否会被抢占?新线程的优先级是多少?主线程和新线程哪一个先执行?可能不同系统处理不一样)。如果主线程调用了join(),那么如果主线程执行到join()时,新线程还没有执行完毕,那么主线程会等待新线程执行完毕,再继续往下执行;如果主线程执行到join()时,新线程已经执行完毕,那么主线程继续往下执行。

你可能感兴趣的:(01 Hello, world of concurrency in C++)