주기적으로 일부 인 메모리 구조를 업데이트해야하는 pylons 프로젝트가 있습니다. 이는 주문형으로 수행되어야합니다. 나는 이것을위한 신호 처리기를 생각해 내기로 결정했다. 사용자는 SIGUSR1
을 메인 파일론 스레드로 보냅니다.이 파일은 프로젝트에서 처리합니다.Pylons의 신호 처리
이 신호, 다음과 같은 예외로 서버 충돌 취급 후에 제외하고 작동합니다
File "/usr/lib/python2.6/SocketServer.py", line 264, in handle_request
fd_sets = select.select([self], [], [], timeout)
select.error: (4, 'Interrupted system call')
는이 문제를 해결하는 것이 가능한가를?
TIA.
참조 용으로, EINTR에 대한 재시도를 요구하는 (아직 열려있는) Python 티켓이 있습니다. http://bugs.python.org/issue9867 –
@Gunnlaugur Briem good reference – Wei