Skip to content

Latest commit

 

History

History
22 lines (17 loc) · 846 Bytes

README.md

File metadata and controls

22 lines (17 loc) · 846 Bytes

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