多进程的问题
文件a,文件b分别编译成可执行文件,a里fork一个子进程,然后system("./b");调b的可执行文件。没有问题。
但是如果a,b 分别编译,并连接成一个可执行文件c,a里同样fork一个子进程,然后调用b的入口函数,比如说把b的main函数改成其他函数名做为被调用者。这样程序运行就会有问题。
编译连接都没有问题,可是运行就是会出错
一般会是什么问题呢?请各位帮忙
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
不知到楼主是怎么写的,这样做应改不会有什么问题的,仔细看看你的代码吧。fork的时候,程序里的变量会被复制一份到子进程的,只有在线程中才需要手动维护变量的并发访问,虽然Linux下的线程就是一个进程。下面这个例子可以正常运行的:
复制代码
查查看,全局变量的定义和引用是否有问题,还有就是内存越界的可能。
复制代码
这个代码运行的很好,你的程序是这个结构吗