#include <pthread.h>
#include <iostream>
using namespace std;
int global = 0;
void * assign_value(void *param){
    global = 3;
}
int main(){
    pthread_t thread;
    pthread_create(thread, NULL, assign_value, (void *) nullptr);
    pthread_join(thread, NULL);
    cout << global << endl;
    return 0;
}结果输出为3,如果不加pthread_join(thread,NULL)的话,输出为0。这里,pthread_join只有当thread线程结束工作时才返回。
本文出自 “胡一刀” 博客,谢绝转载!
原文:http://11190017.blog.51cto.com/11180017/1764001