我写了一个程序,我在main中创建了一个有一个调用maFunction来显示文本消息的儿子的线程.问题是,当我执行它时,它不起作用,我不明白为什么.欢迎任何想法.非常感谢你 .
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
void * maFonction (void * val) {
char * chaine = (char *) val;
printf ("text received: %s\n", chaine);
}
int main(void) {
pthread_t leThread;
int ret = pthread_create (&leThread, NULL, maFonction, "First program with Pthreads");
if (ret != 0) {
perror ("pthread_create");
exit(EXIT_FAILURE) ;
}
}
Run Code Online (Sandbox Code Playgroud)
您的程序在线程启动之前结束执行.
添加pthread_join(leThread, NULL);到最后main()
或添加sleep(1);,不要忘了,包括<unistd.h>对sleep()