首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >105-解决僵尸进程问题

105-解决僵尸进程问题

作者头像
凯茜的老爸
发布于 2018-09-11 15:06:01
发布于 2018-09-11 15:06:01
5830
举报
文章被收录于专栏:python百例python百例

os.waitpid()的第2个参数,0表示挂起父进程,1表示不挂起父进程。

代码语言:javascript
复制
import os
import time

pid = os.fork()

if pid:
    print('In parent. sleeping...')
    print(os.waitpid(-1, 1))  # 无僵尸进程可以处理,返回0
    time.sleep(20)
    print(os.waitpid(-1, 1))  # 处理僵尸进程,返回子进程PIP
    time.sleep(60)
    print('parent done.')
else:
    print('in child. sleeping...')
    time.sleep(10)
    print('child done')

# watch -n1 ps a  当子进程成为僵尸进程时,显示为Z
# kill 试图杀死僵尸进程、父进进程,查看结果
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.08.09 ,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档