threadmanager

A thread manager for Python programs


Keywords
thread, state, manager, python3, thread-pool-manager, threading, threadpool
Licenses
LGPL-3.0/GPL-3.0+
Install
pip install threadmanager==0.1.0

Documentation

threadmanager

A thread manager for Python programs

It provides:

  • Centralization of starting and monitoring threads
  • State management for the functions in the threads
  • Logging for exceptions and excessive runtime

Original use case:

  • GUI program that calls back-end functions for IO-bound work
  • GUI has a cancel button that should always work, so:
    • the GUI mainloop should not be blocked
    • the called functions should intermittently check if the user has pressed the cancel button
  • Avoid running new work threads when the user wants to cancel
  • Allow running callback functions when the program starts working or goes idle.
    • e.g. update a status bar with certain text

Installation:

  • pip install threadmanager

Tested for Python >=3.6.5 on Linux (Ubuntu) and Windows 7/10