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

如何才能终止一个已经PID子进程的执行

    来源: 互联网  发布时间:2016-02-16

    本文导语:  如下产生的cpid子进程,在其中执行runit ,runit是个无限循环执行的操作,如何才能在父进程中根据需要停止该子进程的执行,而不影响父进程?               cpid = fork(); if (cpid == 0) {//this is a child thre...

如下产生的cpid子进程,在其中执行runit ,runit是个无限循环执行的操作,如何才能在父进程中根据需要停止该子进程的执行,而不影响父进程? 
             cpid = fork();
if (cpid == 0)
{//this is a child thread
if (execv("./runit", argv) == -1) {
printf("errno: %dn",errno);
ERR("execv error!");
return FAILURE;
}
exit(0);
}
else
if (cpid>0)
{//this is parent thread
              printf("child PID is %d.n",cpid);
wait(&status);
}
else
             printf("Error run.n");

|
if (cpid >0)
{
              printf("child PID is %d.n",cpid);
sleep(3);
kill(cpid,SIGKILL); //杀死子进程
wait(&status)

|
在子进程中收到终止进程的信号后,如何才能对应进行信号的检测和响应?
=================================================================
假定信号为SIGUSR2,进程可以这样处理

void signal_catch( int signo )
{
    printf ( "i catch sigusr2");
    关闭所有已打开的资源。
    exit(0);
}

ChildProcess()
{
    ......
    signal( SIGUSR2 , signal_catch);
    ......
}

    
 
 

您可能感兴趣的文章:

  • 在进行多进程编程时,怎样才能知道系统管理员一共允许我同时起几个进程?
  • shell进程退出,其子进程怎样才能不死,交给init进程管,谢谢,请指点下我写的程序
  • linux内核高手进!关于调用__fork()时0号进程的子进程才能与父进程共享PID的困惑
  • shell退出,其相应的子进程,如何才能不死亡
  • 请问,在linux下面,用什么样的函数才能将进程信息读出来??急急
  • 怎么才能提高一个进程能打开的描述符数量
  • 怎么才能得到 一个进程所消耗的内存的大小呢 ??
  • 在unix下面,执行tbinit进程可以启动OnLine,怎么才能执行tbinit啊?
  • (100分急)怎么样才能让LINUX进程起多于255个线程还不影响堆栈
  • 在LINUX/UNIX中僵尸进程是如何产生的?怎样才能避免僵尸进程的产生?
  • javascript开源软件 iis7站长之家
  • daemon进程crash了怎么才能把错误信息记录下来?
  • 怎么样才能让APPLICATION象WIN2000里的服务那样,启动后自动到进程里边,或者最小化后让它在任务栏消失.
  • 在Java程序中怎样写代码才能杀掉系统中的进程?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 为什么执行完execlp函数后程序就退出了,怎样才能让程序继续执行后面的代码
  • 为什么我的可执行文件是rwx的,却还要 加 ./ 才能执行?
  • 如何才能中断程序的执行?
  • 关于在QT环境下加载gif图片的问题(可以显示,但是只有使用终端启动可执行文件才能显示,双击执行却不显示)这是为什么?
  • 我怎么才能知道一个线程已经执行结束?
  • 我不知道怎么才能用JBuilder写的窗口变成个可执行文件
  • 刚安装好redhat 9.0,怎么不能执行ipconfig命令呀?我怎么才能找到动态分配的IP地址呀???
  • 怎样才能从javascript调用一个可执行程序?
  • 怎样才能执行MIME类型为application/x-executable-binary的文件呢?
  • Makefile怎么写才能让生成的可执行文件让GDB调试呢?
  • 在linux C 调用 shell 语句 如何才能不回显执行结果
  • qt生成的EXE文件需要它本身的DLL文件才能执行。请问怎么解决
  • 请问在win2000,ibm http环境下怎么配置websphere才能执行*.jsp文件。请大家帮帮忙
  • 我在书上看到:“JSP页面最终都要编译成SERVLET 才能执行” 那么我自已可以写SERVLET 吗?如果能,又怎样运行它呢 ?
  • 用servlet在后台画了一个图形,可是用jdk编译成.class文件以后,这个图形没有生成,好像是必须要在浏览器中执行这个.class文件以后才能生
  • 怎么样才能再关闭JFrame时,执行我自定义的一些方法?(在线等待)
  • 为什么执行的时候只是显示了2、3条记录。而1没有显示出来。如何才能把一也显示出来呢。
  • 为什么我的.sh命令必须在前面加上./*****.sh才能执行?
  • 为什么在有的地方用以下的方法,会出现“无效的游标状态”的错误,出现错误的时候要加上rs.next()才能执行,但在另一些地方同样只有以下
  • 我的.class文件只有拷贝到 jdkbin目录下才能正确执行
  • 半路出家转行学编程如何才能成为大牛?
  • 修改了hosts.allow,怎么才能生效,是启动了哪个服务才能生效吗?
  • 请较:用window2000做网关,现在LINUX怎么设置才能才能通过它上网呢?
  • 在applet中怎么才能得到当前页面的接口,我的意思是说怎样才能改变比如说一个输入框中的内容
  • 请问xvfs是什么文件系统?怎样才能让linux认出?
  • 如何才能再次进入linux?
  • 提示文字怎样才能按多行显示?
  • 如何才能在java(vj环境下)播放声音?
  • 急!怎样才能获得javax.rmi包?
  • 用什么软件才能打开后缀为.z的文件?
  • 为什么Component的组件要add后才能paint()?


  • 站内导航:


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

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

    浙ICP备11055608号-3