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

为什么这个程序没有输出?父进程中止后子进程也跟着中止吗?

    来源: 互联网  发布时间:2015-10-11

    本文导语:  为什么这个程序没有输出?父进程中止后子进程也跟着中止吗? #include  #include  #include  #include  int main() {     int status;     pid_t child_pid;     child_pid = fork();     if(child_pid=0)     {         sleep(3);    ...

为什么这个程序没有输出?父进程中止后子进程也跟着中止吗?
#include 
#include 
#include 
#include 

int main()
{
    int status;
    pid_t child_pid;

    child_pid = fork();
    if(child_pid=0)
    {
        sleep(3);
        printf("Next!n");
        sleep(3);
        printf("Next!n");
return 0;
    }
    else
        return 0;
}

//毫无疑问,父进程先中止.我想在子进程中打印一些东西,但是什么也看不到.
//父进程先于子进程中止,是不是子进程马上也中止了,被init清除,所以看不到输出?
//僵尸进程只可能在子进程先于父进程中止的情况下才能产生吗?


|
应当是if(child_pid == 0),你的写法有误
父进程退出时子进程依然运行,但是子进程为孤儿进程,此时父进程为系统进程。
进程僵死是子进程结束,但主进程没有wait子进程结束造成的

    
 
 

您可能感兴趣的文章:

  • 怎么在一个程序的执行过程中中止执行它?比如一个按钮的响应程序中,执行一半中止??20分!!!
  • linux可不可以强行中止程序
  • 中止一個過程,返回主程序用哪條語句?
  • 如何根据条件中止当前JSP程序??
  • writev函数发信导致客户端程序中止问题
  • 编程技术其它 iis7站长之家
  • 如何解决程序自己调用自已后结束进程,并且父进程能真的退出不成为僵尸进程?
  • 在程序中启动一个进程(不是线程),如何知道该进程已运行结束
  • 通过c程序写代码怎么查看进程是不是存在了?怎么查看该进程占用的内存是多少?
  • 应用程序chinput开机自动启动, 但状态为Defunct的进程(“僵尸”进程), 如何删除?
  • 奇怪:程序一fork子进程时就停住了,似乎根本不能fork子进程啊?
  • shell进程退出,其子进程怎样才能不死,交给init进程管,谢谢,请指点下我写的程序
  • 如何在程序中执行另外一个程序,并且当前进程依然执行?
  • 为什么我在java程序里启动的一个程序在java程序关闭后,该程序的所有进程都关掉了
  • 这个socket程序的服务进程开始服务后,为什么总是两个进程?
  • 怎样编写一段程序,要求调用fork并在子进程中建立一个新的对话期。验证子进程变成了进程组长而且不再有控制终端。
  • 先 fork 子进程然后 execl 另一个可执行程序, 如何得到这个可执行程序结束的返回值?
  • linux shell关掉后java程序(进程名abc)仍能运行,用ps -ef|grep abc能查到进程名
  • 在程序中如何得到一个进程的状态?(不用ps命令),如何检查一个进程处于D状态(uninterruptible sleep)
  • 如何准确理解“程序”、“进程”、“线程”这三个概念
  • 请问在 linux 下如何使用 execl() 调用另一个多进程的程序?
  • 请问gdb怎么处理带有启动参数的程序和多进程程序?
  • 为什么程序异常后,这个程序监听的端口被转移到其它进程里
  • 关于sco下的多进程程序的问题?
  • help help busy!!! 知道进程的ID号,在程序里如何检查这个进程还在不在?
  • 如何在程序里面得到当前程序的进程 ID 号?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux开机运行的程序无法输出
  • 请教:在程序里用system启动一个命令,如何获得这个进程的正常输出和错误输出到一个字符串里?
  • 怎样把标准输出指定到一个文件,这样我便不用关心运行时间长的程序的屏幕输出,待运行完后看文件里的内容就可以了吧?
  • go和python调用其它程序并得到程序输出
  • 程序输出的问题
  • [新手提问]请问在命令行下追踪程序输出信息的方法
  • 有一个7*24运行的服务程序,现在我将这个程序的输出重定向到一个文本,现在要实时读取文本内容,有什么好的办法?
  • java程序在linux系统下中文输出乱码,输出一个汉字对应一个问号
  • 请教crontab中运行的程序输出的信息用什么命令删除?
  • 如何记录程序输出每一行日志的时间?
  • 请教关于dlopen,动态库连接程序的输出函数
  • unix shell中能否将后台运行程序的输出保存到变量中?
  • 请问如何在程序中获得shell命令输出的信息?
  • 开发android应用程序时,用java调用so库输出日志问题
  • linux下程序输出导入到mysql?
  • gcc程序怎么不能将输出重定向到文件或管道呀,你们有这个问题吗?
  • 请问,怎么把某个程序的输出赋给shell变量??
  • shell中如何得到程序的输出值
  • 怎么讲程序的运行时间输出到一个文件里面?
  • 怎么屏蔽控制台程序的打印输出信息
  • 重装服务器后IIS网站错误(应用程序中的服务器错误)
  • Linux 编程怎么样在程序开启一个程序,和关闭一个程序?
  • windows server2008上PowerBuilder程序系统错误解决方法
  • 请问从一个java程序中如何调用另一java程序,并控制可以其状态(最小化、最大化、结束程序),还有怎样知道那个被调用的程序结束。
  • c语言判断某一年是否为闰年的各种实现程序代码
  • Linux下的程序是在内存中运行的吗?为什么在程序运行的时候可以删除程序文件?
  • 程序员的八种级别,你属于哪一级?
  • 我的程序是用c写的gtk+程序,有个函数的参数要传给它图片的文件名,但是图片和原程序不在同一目录下怎么办?怎么在程序里指定文件的路径
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 为什么linux下的C++程序这么少见? 请问那里有linux下的C++程序?什么类型的程序都可以.
  • 在docker容器中通过apt-get安装新的程序


  • 站内导航:


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

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

    浙ICP备11055608号-3