#! coding=utf-8
#使用信号解决zombie问题
import os, time, signal
def chldhandler(signum ,stackframe):
while 1:
try:
result = os.waitpid(-1, os.WNOHANG)
except:
print '.............'
break
signal.signal(signal.SIGCHLD, chldhandler)
#每次收到SIGCHLD信号,就调用chldhandler这个处理函数
signal.signal(signal.SIGCHLD, chldhandler)
print "Before the fork ,my pid is ",os.getpid()
pid =os.fork()
if pid:
print "hello from the parent ,the child will be pid %d" %pid
print "in parent ,start time at %s"%(time.time())
time.sleep(10)
print "in parent ,end time at %s"%(time.time())
else:
"""
5s 之后 子进程死掉,然后chldhandler处理僵尸进程
"""
print "in child ,sart time at %s"%(time.time())
time.sleep(5)
print "in child ,end time at %s"%(time.time())
输出:
Before the fork ,my pid is 29566
in child ,sart time at 1375251988.9
hello from the parent ,the child will be pid 29567
in parent ,start time at 1375251988.9
in child ,end time at 1375251993.9
.............
in parent ,end time at 1375251993.9
五秒钟之后,子进程结束,父进程收到信号开始处理僵尸进程,发现其实父进程没有sleep 10秒,这是因为
sleep()有一个特殊的情况,如果任意一个信号处理程序被调用,睡眠会被立刻终止,而不是继续等待剩余的时间。
相关推荐
利用python进行数字信号处理的相关程序
Python数字信号处理简介。
用于信号处理,python完整代码,详细。
Python植物大战僵尸源程序包含一个game.py及一个图片素材包
应用Python 改进信号处理类实验教学.pdf
5.28日博客的所有代码,5个使用jupyternotebook编写,两个是python文件,都是完全可以运行的,如在使用中出现问题,可以在5.28日博客:数字信号处理8下留言
Python中对信号处理的模块主要是使用signal模块,但signal主要是针对Unix系统,所以在Windows平台上Python不能很好的发挥信号处理的功能。 要查看Python中的信号量,可以使用dir(signal)来查看。 signal.signal() 在...
Python 植物大战僵尸代码, 使用pygame,功能实现如下: - 支持的植物类型:太阳花,豌豆射手,寒冰射手,坚果,樱桃炸弹。 - 支持的僵尸类型:普通僵尸,棋子僵尸,路障僵尸,铁桶僵尸。 - 使用json文件保存关卡信息...
python版本植物大战僵尸,目前全网最好版本,功能实现如下: - 支持的植物类型:太阳花,豌豆射手,寒冰射手,坚果,樱桃炸弹,双重豌豆射手,三重豌豆射手,食人花 ,小喷菇,土豆地雷,倭瓜。 - 支持的僵尸类型:...
此数据用于文章《基于Python心电信号检测与处理》
基于python的植物大战僵尸,简单的实现了一些功能,实现基本可玩性
python植物大战僵尸项目源码,欢迎有需要的小伙伴们下载 我的环境python3.8,pygame1.9.2
基于Python的植物大战僵尸的课程设计.7z
时域信号特征提取,python语言,用于机器学习
利用Python实现的植物大战僵尸的简易游戏源码,可供python游戏开发学习使用,运行只需安装pygame库即可正常执行与运行,是学习游戏制作的优秀代码。
相关文章:【python数字信号处理】——scipy库设计滤波器(IIR为例)、绘制滤波器频谱响应、IIR滤波器滤波、读写wav音频文件
信号分析系统python实现版本,内含多个迭代的版本,含可运行的源码。
Python信号处理原版英文书籍,详细介绍了信号的时域,频域分析,并插入大量的实战编程案例。
python编写的WINDOWS应用守护进程(定时检查进程是否存在),检查时间可设置,进程名称可更改,直接与进程放在同一目录即可