当前位置:  技术问答>linux和unix

fork()的问题(急!!!!!!!!!!)

    来源: 互联网  发布时间:2015-05-28

    本文导语:  高手们:     我在编程时遇到了一个问题,就是在用fork()派生子进程的时候,每当子进程退出的时候主进程就会重新加载!     下面是我的fork代码:     if( fork() == 0 )     { if( GetFrame( socket, buf, &out_...

高手们:
    我在编程时遇到了一个问题,就是在用fork()派生子进程的时候,每当子进程退出的时候主进程就会重新加载!
    下面是我的fork代码:
    if( fork() == 0 )
    {
if( GetFrame( socket, buf, &out_buf ) == 1 )//抓包函数
{
printf( "### Get Frame Success......n" );

send_msg_by_socket( socket, out_buf );

printf( "### Send out......n" );
}
else
{
printf( "### Get Frame Failure......n" );
    printf( "### gbnj->Frame_End is: %dn", gbnj->Frame_End );
}

//alarm( 0 );
close( socket );
_exit( 0 );

    }//end of if( fork )//Hmilzy

    我已经在main()的开始屏蔽了SIGCHLD信号:
    signal(SIGCHLD, SIG_IGN);

    请高手们解答----高分感谢!!!!!!!!!

|
从新加载是什么意思?父进程退出有自动启动??
你是在什么系统下,solaris?linux?unix下的signal()屏蔽信号一次,然后就会恢复。linux下则是永久的

|
不懂楼主说的。加载?

|
IGN是永久的。
楼主交代清楚些。

|
这段代码是不是在循环里?如果if语句执行多次,就会产生多个子进程。

|
把main函数全部代码贴出来看看

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 奇怪:程序一fork子进程时就停住了,似乎根本不能fork子进程啊?
  • unix中的fork2与fork有设么区别?
  • 程序在fork前申请了内存若干,在fork后子进程是否需要释放父进程之前申请的内存
  • 如何理解fork函数返回2次啊?
  • 急于明白Fork的用法.请提供中文解释.谢谢.
  • 关于fork的不解
  • 弱弱的问:fork和exec的区别是什么?
  • 关于fork的讨论
  • 关于fork的疑问?
  • fork之后的输出
  • exit和fork是什么关系?他们是怎么配合使用的?
  • fork函数,在线等待,马上结贴。谢谢!!!!!!!!!!!!
  • 请教 linux的fork从什么版本开始支持COW?
  • c++ 和 fork
  • "fork(2)" 中这个2表示什么意思
  • fork函数的源代码在哪呢
  • 关于fork函数
  • c/c++ iis7站长之家
  • linux的fork()函数
  • 创建一个子进程,什么时候该用clone()而不是fork()?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3