免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1919 | 回复: 7
打印 上一主题 下一主题

[C] 求助:Linux下C语言系统调用问题!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-03-20 13:59 |只看该作者 |倒序浏览
在linux下用C的system()函数调用系统命令,执行几次后程序老被singal 打断,如signal 11,无法继续运行程序!求高手解决!!急

论坛徽章:
0
2 [报告]
发表于 2006-03-20 15:29 |只看该作者
为什么非要用system()调用系统函数啊?

你的用户权限有问题吧。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
3 [报告]
发表于 2006-03-20 15:58 |只看该作者
你可以把信号屏蔽掉。
man sigprocmask

论坛徽章:
0
4 [报告]
发表于 2006-03-20 16:44 |只看该作者
为什么会被signal打断呢,难道有谁在对这个程序发信号?

论坛徽章:
0
5 [报告]
发表于 2006-03-21 14:02 |只看该作者
现在还有人用system()?
用fork+execl吧

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
6 [报告]
发表于 2006-03-21 15:14 |只看该作者
原帖由 mike_chen 于 2006-3-21 14:02 发表
现在还有人用system()?
用fork+execl吧

system 就等于 fork + exec + waitpid

论坛徽章:
0
7 [报告]
发表于 2006-03-21 15:49 |只看该作者
原帖由 flw 于 2006-3-21 15:14 发表

system 就等于 fork + exec + waitpid

但是以前看过有些资料上都说不推荐使用system 好像在man手册里也有吧 主要是后者可以更细部跟踪执行情况

[ 本帖最后由 mike_chen 于 2006-3-21 17:13 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2006-03-21 15:58 |只看该作者
原帖由 flw 于 2006-3-21 15:14 发表

system 就等于 fork + exec + waitpid

那是不是这样:
就是如果需要父进程需要等待子进程结束再执行自己就需要system(父进程可能需要用子进程执行的结果)
如果子进程是单独执行的实体,就可以fork+exec
就是感觉用后者能更有效的检测到运行状况或者是出错处


[ 本帖最后由 mike_chen 于 2006-3-21 16:09 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP