amarao (amarao_san) wrote,
amarao
amarao_san

thread_timeout

Я его писал-писал, писал-писал, а на выходе имею, что в реальной ситуации зависшей enclosure процесс отрабатывает таймаут (as planned), но не завершается и остаётся болтаться в неумершем состоянии (которое даже по ctrl-z с консольки не свернуть, not as planned).

Видимо, надо демонизировать тред (можно ли демонизировать тред в отрыве от приложения?). Но пост-фактум уже поздно (всё залипло), а до - теряется тонкая духовная связь с stdin/out.

Видимо, надо делать хук на выход и демонизировать программу перед выходом.

То есть не:
@thread_timeout(10)
def hung():
  hung_please()

hung()
sys.exit(),

а:

hung()
thread_timeout.bgexit()


Ща пойду писать код для bgexit (и проверять в боевых условиях, что эта идея работает)...
Tags: thread_timeout
Subscribe

  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 4 comments