#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線程結束工作時才返回。