system 报错 No child process
来源:互联网 发布:上帝之眼网络摄像头app 编辑:程序博客网 时间:2024/06/06 17:39
今天在遇到一个问题,在Linux下用system()函数执行命令时出错,返回-1,错误原因NO child processes。在网上查找了一下发现是如果SIGCHLD信号行为被设置为SIG_IGN时,waitpid()函数有可能因为找不到子进程而报ECHILD错误。似乎我们找到了问题的解决方案:在调用system()函数前重新设置SIGCHLD信号为缺省值,即signal(SIGCHLD, SIG_DFL)。
所以根据网上介绍的方法果真解决了。方法如下:
typedef void (*sighandler_t)(int);int pox_system(const char *cmd_line){ int ret = 0; sighandler_t old_handler; old_handler = signal(SIGCHLD, SIG_DFL); ret = system(cmd_line); signal(SIGCHLD, old_handler); return ret;}
代码引用自 http://www.verydemo.com/demo_c167_i3191.html; 0 0
- system 报错 No child process
- 启动mongodb报错child process failed
- mongoDB启动报错 ERROR: child process failed, exited with error number
- 解决启动mongodb --fork报错 -ERROR: child process failed, exited with error number 1
- WIN7安装bugzilla报错 couldn't create child process: 720002: index.cgi
- mongodb 启动报错 ERROR: child process failed, exited with error number 1
- 启动mongod报错child process failed, exited with error number 100
- VirtualBox报错:ntdll.dll not found in child process(rc=-610)
- SIOCADDRT: No such process 添加路由报错
- activiti报错:no deployed process definition found with id
- gdb报信息Detaching after fork from child process ***
- 【Linux运维入门】MongoDb启动报错:ERROR: child process failed, exited with error number xx
- system函数错误返回-1 错误原因NO child processes
- linux报错: no device found for connection 'System eth0'
- wait && child process && fork
- 在system-images也安装好之后报错:no system images installed for this target
- service network restart 报错:No suitable device found: no device found for connection 'System eth0'
- cvc-complex-type.2.4.d:(...)No child element is expected at this point.的报错原因和解决方法
- jvm常见运行时内存溢出实现方式
- android 相机权限检查
- 坚持完成这套学习手册,你就可以去 Google 面试了
- 数据结构预备知识(四)
- css 的hack
- system 报错 No child process
- Hibernate4 将 Entity 保存不到数据库 但可以查询数据问题解决
- UIActivityIndicatorView
- Android清除本地数据缓存代码
- CSS text-index| transform| decoration| text-overflow
- scipy用yum安装成功,python中却会import失败
- css中!important的作用
- SVN下的文件被锁定不能update和commit
- 工作6年第一记