PyThreader¶
PyThreader is a Python framework for developing threaded applications. It is built on top of standard Python therading library module.
Its purpose is to simplify threaded application development by providing a collection of useful classes implementing some basic
inter-thread synchronization and communication functions.
PyThreader Primitive¶
All PyThreader classes are subclasses of Primitive class, which combines the functionaity of three standard Python threading library classes:
Lock, Condition and Semaphore. The Primitive class can be used as is or as a base class for other user-defined classes.
PyThreader classes¶
- PyThread - combination of the
Primtiveand standard Pythonthreading.Trhread- Timer - enhancement of the standard
threading.Timer- Promise - similar to JavaScript
Promise, but with modifications reflecting the differences between Python and JavaScipt threading models- TaskQueue - a mechanism to run and manage concurrent
Tasks- lightweight, short lived threads- Scheduler - an object which can be used to schedule one-time or periodic jobs executed on concurrent threads
- Producer - an abstraction of a multi-threaded producer of abstract items with an internal
TaskQueue- Processor - a multi-threaded consumer and/or processor of abstract items, capable of sending them to another Processor
- Escrow - a mechanism for 2 threads to communicate in synchronous way
- Flag - simple object with a variable value, which a thread can wait for
- Gate - a combination of threading.Event and threading.Condition objects