linux 多线程基础问题
代码很简单。
run1函数不执行(也或许所执行了,控制台没有打印?)。
就算如果加上主线程睡眠的话,就是不注释 sleep(1);
控制台打印 run success
就是说run1 函数执行了。
这是什么情况?不是应该并发执行的吗?
Linux 多线程 C
#include <pthread.h>
#include <stdlib.h>
#include <stdio.h>
void * run1(void * arg){
puts("run success\n");
pthread_exit(0);
}
int main(){
pthread_t t_id1;
int tmp = pthread_create(&t_id1, NULL, run1, NULL);
if(tmp == 0)
puts("create success\n");
puts("main\n");
//sleep(1);
exit(0);
}
pthread_join(tmp, NULL)