pthread_create 线程生成后,没有等子线程停止,主线程就先停止了。
主线程停止后,整个程序停止,子线程在没有printf的时候就被结束了。
结论:不是你没有看到结果,而是在子线程printf("..................\n")之前整个程序就已经停止了。
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <string.h>
#include <unistd.h>
#include <pthread.h>
#define FALSE -1
#define TRUE 0
void *shuchu( void *dumy )
{
int j
printf("..................\n")
}
int main()
{
int i = 0
int rc = 0
int ret1
pthread_t p_thread1
if(0!=(ret1 = pthread_create(&p_thread1, NULL, shuchu, NULL)))printf("sfdfsdfi\n")
printf("[%d]\n",p_thread1)
pthread_join(p_thread1, NULL)
return TRUE
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)