免费注册 查看新帖 |

Chinaunix

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

在RedHat Linux下编写的多进程使用execl的问题! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-02-27 17:03 |只看该作者 |倒序浏览
RedHat Linux下编写的多进程使用execl,源码如下:
pid=fork();
if(pid<0)
{
   ........
}
if(pid == 0)
{
                                       
/*执行子程序*/
   if (execl("gather","gather",ini_array->;msc_name,shmid_buf,(char*)0)<0)
{
     sprintf(buf,"error:调用%s子进程出错!\n",ini_array->;msc_name);
     write_main_log_file(buf);                                        }
                                       
}
............

可是运行后ps -ef|grep gather
却是三个gather进程
那位大侠知道怎么回事吗?
注:此程序在Solaris运行正常!!!     

论坛徽章:
0
2 [报告]
发表于 2003-02-28 08:40 |只看该作者

在RedHat Linux下编写的多进程使用execl的问题!

什么会呢
是不是程序的其它部分有问题


execcl 与exec功能一样

就是使用新进程代替当前进程
在这个代码中只有父进程被gather代替

论坛徽章:
0
3 [报告]
发表于 2003-02-28 09:42 |只看该作者

在RedHat Linux下编写的多进程使用execl的问题!

无双大哥,可以把介绍一些关于linux下多进程以及系统调用的编程资料么?

论坛徽章:
0
4 [报告]
发表于 2003-02-28 09:46 |只看该作者

在RedHat Linux下编写的多进程使用execl的问题!

http://www.lisoleg.net/lisoleg/applications/Linux%CF%C2%B5%C4%B6%E0%BD%F8%B3%CC%B1%E0%B3%CC.htm

http://www.chinalinuxpub.com/doc/pro/mpp.html

google关键字
fork  多进程

论坛徽章:
0
5 [报告]
发表于 2003-02-28 09:49 |只看该作者

在RedHat Linux下编写的多进程使用execl的问题!

原帖由 "zgl2k" 发表:
.......

可是运行后ps -ef|grep gather
却是三个gather进程
那位大侠知道怎么回事吗?
注:此程序在Solaris运行正常!!!     

把你的ps -ef|grep gathen 的结果也贴出来.

论坛徽章:
0
6 [报告]
发表于 2003-02-28 16:35 |只看该作者

在RedHat Linux下编写的多进程使用execl的问题!

和你的机器有关的
你可能看到的是sh gather
                          gather
而且你这样启动,因为execl的速度慢,会产生同步问题
这样效果可能好点
if( fork()!=0)
{
      return true
}
...execl()...
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP