大众信息网

C语言创建线程或者子进程后要用if else

关注:100  答案:2  手机版
解决时间 2021-01-30 11:42

if(!fork())
{

}
else
{

}
为什么两段代码同时执行?
还有,谁教我一下线程怎么创(fork是子进程)
最佳答案
fork 是用来创建子进程的, 而不是线程( 线程创建需要用到 pthread_create )

需要根据 fork() 的返回值来判断下面的代码是在父进程(返回pid>0)中还是子进程(返回0)中. 像上面的代码中 if 中的代码被在子进程中执行, else 中的代码在父进程中执行.
全部回答
自己定义的信号,你要emit newoprmsg(unsigned int msg); 才行 不知道你emit了没~~ 子线程的run()里,你好赖也得加个exec()吧,要不无事件循环,制能收到你的signal?
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!