我对 Python 很陌生,所以如果这个问题非常基本,请原谅我。
我正在尝试在使用选择模块从套接字接受数据时处理键盘中断。所以,我有一个 select.select() 函数调用来等待来自套接字的数据,然后将其输出到控制台。
按下 CTRL_C 时,似乎有时会出现 select.error,有时会出现 exceptions.IOError 异常。两种异常对应的错误代码均为 4。
有一些代码在调用堆栈中更深地处理 KeyboardInterrupt 异常,因此当我在接受套接字连接的函数中获得 SIGINT 时,我只想重新引发 KeyboardInterrupt 异常。我还想捕获与连接相关的异常。
检查异常的错误代码是否安全,如果它是 4 则引发 KeyboardInterrupt?这会影响我捕获与连接相关的异常的能力吗?有没有关于错误代码的好资源?
谢谢!