现在,这只是一个小测试,并且是学校作业的一部分。在我的代码中,printf至少不会让我看到它。这是线程无法运行的结果吗?打印线在线程之外工作。感谢您的任何帮助。C printf不在线内打印?
我是新的线程在c。
#include<stdio.h>
#include<pthread.h>
#include<string.h>
#include<stdlib.h>
void *threadServer(void *arg)
{
printf("This is the file Name: %s\n", arg);
pthread_exit(0);
}
int main(int argc, char* argv[]){
int i=1;
while(argv[i]!=NULL){
pthread_t thread;
pthread_create(&thread, NULL, threadServer,argv[i]);
i++;
}
您需要启动线程,并等待它完成,否则在打印之前该程序可能会结束:因此,用于实验的缘故,代码可以做如下修改。 – Carcigenicate
您在此粘贴的代码是否完整?如果是这样,它就会丢失'pthread_join'调用,以等待线程完成。否则,您的主程序可能在线程有机会运行之前退出。 –
这是完整的好吧知道我错过了一些东西。 – TheMangaStand