python 信号--Signal

信号signal 是python进程间进行信号发送的一种机制,其原理是操作系统对进程的控制,是一种程序中断

一个进程一旦接收到信号就会打断原来的程序执行流程来处理信号。

 

那么singanl到底有什么用呢?

siganl的应用:

1. 故障定位技术(进程的底层故障,例如进程突然中断和一些可能性较小的故障)

2. 对进程的流程控制 

 

首先说说与信号signal有关的几个函数

(1)os.kill(pid,sig)

发送一个信号给某个进程

参数解析:

pid 指定发送信号的进程号

sig  要发送的信号代号(需要通过signal模块获取)

(2)signal.alarm(sec)  非阻塞函数

设置时钟信号,在一定时间后给自身发送一个SIGALRM信号

 

原理: 时钟的创建是进程交由操作系统内核(kernal)帮助创建的

时钟和进程之间是异步执行的,当时钟到时,内核会发送信号给进程,进程接收信号进行相应的响应操作.这就是所谓的python异步处理方案.

后面的时钟会覆盖前面的时钟,一个进程只有一个挂起的时钟

 

名词的理解:

异步: 程序在执行中利用内核功能帮助完成必要的辅助操作,不影响应用层持续执行

注意: 这里的同步和异步机制是相对多进程而言的.(注意与多线程的异步执行相区分,之后我会写写多线程的异步机制的相关文章)

 

在进程中通信这个概念下,只有singal是异步执行的,另

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值