我只是在尝试使用多线程程序,但我遇到了 pthread_join 函数的问题。下面的代码只是我用来显示 pthread_join 崩溃的一个简单程序。此代码的输出将是:
before create
child thread
after create
Segmentation fault (core dumped)
是什么导致 pthread_join 给出分段错误?
#include <pthread.h>
#include <stdio.h>
void * dostuff() {
printf("child thread\n");
return NULL;
}
int main() {
pthread_t p1;
printf("before create\n");
pthread_create(&p1, NULL, dostuff(), NULL);
printf("after create\n");
pthread_join(p1, NULL);
printf("joined\n");
return 0;
}