use*_*262 3 python signals python-2.7
请,谁能解释为什么我会收到此错误:
ValueError: invalid signal value
Run Code Online (Sandbox Code Playgroud)
尝试在Python 2.7.6和Python 3.3下执行此测试代码时
import signal, os
def handler(signum, frame):
print('Signal handler called with signal', signum)
signal.signal(signal.CTRL_C_EVENT, handler)
Run Code Online (Sandbox Code Playgroud)
您无法为注册信号处理程序CTRL_C_EVENT,因为它不支持。
不幸的是,CTRL_C_EVENT上的Python文档 并没有真正明确地指出:当文档说“ 该信号只能与os.kill ” 一起使用时,它们的意思是从字面上看,就像“真的,您对这个信号所做的所有事情都将其用作”在中os.kill(pid, signal.CTRL_C_EVENT),因此请勿尝试为其注册处理程序”。
有关某些背景,请参见Python问题9524。
是否应该更好地记录该行为?当然好。
| 归档时间: |
|
| 查看次数: |
814 次 |
| 最近记录: |