2017-12-03 46 views
-1

我搜索了与此相关的答案,但没有遇到任何问题。我正在为P2P网络编写套接字程序,因此我需要合并一些信号处理。如何捕获CTRL + C并执行python中的主函数内的条件?

如果我在运行程序时按下CTRL + C,程序应向另一个对等方发送“LEAVE”请求。

伪代码:

if conditionX 
    dosomething(IP, port) 
if conditionY 
    dosomethingelse(IP, port) 
if SIGINT detected 
    sendleaverequest(peerip, port) 

我如何能实现信号处理吗?

回答

1

CTRL-C是操作系统的信号之一。您可以使用包括信号库或模块在内的编程语言处理信号。

对于Python,您可以使用系统模块,如果您处理signal.SIGINT,则可以在按CTRL-C时执行自己的代码。从前面的问题

实例应用:

访问: How do I capture SIGINT in Python?

相关问题