Hack day project. Figure out if the main thread is hanging, and if so, what's causing it to hang.
Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
LICENSE
README.md
__init__.py
setup.py
test_hangwatcher.py

README.md

Usage

from twisted_hang import HangWatcher
watcher = HangWatcher(0.1, 0.5) # these params are optional. They have sane defaults
watcher.start()

Stuff will magically get printed out if the main thread hangs for more than MAX_DELAY seconds. If you want more info, add something like this after the lines above:

from twisted.internet import task
# Print stats every 60 seconds
lc = task.LoopingCall(watcher.print_stats)
lc.start(60)