大众信息网

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

答案:2  mip版
解决时间 2021-01-30 11:42
  • 提问者网友:妳熄滅叻菸,説啓従偂
  • 2021-01-29 21:21

if(!fork())
{

}
else
{

}
为什么两段代码同时执行?
还有,谁教我一下线程怎么创(fork是子进程)
最佳答案
  • 二级知识专家网友:用二逼挥霍青春
  • 2021-01-29 21:57
fork 是用来创建子进程的, 而不是线程( 线程创建需要用到 pthread_create )

需要根据 fork() 的返回值来判断下面的代码是在父进程(返回pid>0)中还是子进程(返回0)中. 像上面的代码中 if 中的代码被在子进程中执行, else 中的代码在父进程中执行.
全部回答
  • 1楼网友:清欢话寂寥
  • 2021-01-29 23:23
自己定义的信号,你要emit newoprmsg(unsigned int msg); 才行 不知道你emit了没~~ 子线程的run()里,你好赖也得加个exec()吧,要不无事件循环,制能收到你的signal?
我要举报
如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
点此我要举报以上问答信息
推荐资讯