发新话题
打印

问大家一个关于双进程的问题,谢谢答复!

问大家一个关于双进程的问题,谢谢答复!

我的程序如下:
child = os.fork()
if child != 0:
  ......
  os.kill(child,signal.GIGKILL) #杀死子进程
  ......
else:
  ......
  请问在子进程中杀死父进程该怎么写,谢谢!
  ......
      
我的机子运行环境: uname -a: Linux localhost.localdomain 2.4.18-14 #1 Wed Sep 4 13:35:50 EDT 2002 i686 i686 i386 GNU/Linux echo $SHELL: /bin/bash

TOP

C 里面有 getppid() 可以得到父进程的 PID, 估计 Python 也有吧      
'
◆ 发帖时请【突出主题】, 以便您的问题能够及时得到回复
◆ 发帖时请将您的【代码】或者【脚本】写在 [code] 和 [/code] 中间

TOP

找到了, 是 os.getppid()      
'
◆ 发帖时请【突出主题】, 以便您的问题能够及时得到回复
◆ 发帖时请将您的【代码】或者【脚本】写在 [code] 和 [/code] 中间

TOP

复制内容到剪贴板
代码:
[color=blue]-(guest@mac:tty1)-(python)-
[5894 0] %[/color] cat fork.py
#! /usr/bin/python

import os

pid = os.fork()
if pid != 0:
    print "From parent: PID = %d" % (os.getpid())
    os.wait()
else:
    print " From child: PID = %d PPID = %d" % (os.getpid(), os.getppid())
[color=blue]-(guest@mac:tty1)-(python)-
[5894 0] %[/color] ./fork.py
From child: PID = 30091 PPID = [color=red]30090[/color]
From parent: PID = [color=red]30090[/color]
[color=blue]-(guest@mac:tty1)-(python)-
[5894 0] %[/color]
      
'
◆ 发帖时请【突出主题】, 以便您的问题能够及时得到回复
◆ 发帖时请将您的【代码】或者【脚本】写在 [code] 和 [/code] 中间

TOP

发新话题