Spawn a thread that executes tasks in order
Project description
Threaded Task Executor
Allows functions to be called in a seperate thread and executed in FIFO order.
Possible Uses:
- For serial communication where send/recv order matters
- Run background tasks in tkinter easily, without freezing gui
- Any application where background tasks are required to be executed in order
Gettings Started:
Installing
pip install threaded-task-executor
Importing
from threaded_task_executor import Task_Queue, Task
How To Use
tasks = Task_Queue()
tasks.add_task(Task(print, args=("test 1")))
tasks.add_task(Task(print, args=("test 2")))
When this is run it should start the thread and execute the tasks in FIFO order.
Documentation:
Task(func, callback=None, task_name="", args=(), kwargs={})
- func : the function that will be called when executed
- callback : function that will be run when the task has started and finished
- callback("STARTED", task_name)
- callback("FINISHED", task_name)
- task_name : the name of the task
- args : tuple of arguments that will be given to the function
- kwargs : dict of keyword arguments that will be given to the function
Task_Queue(daemon=None)
- daemon : (True, False, None) : Whether main thread has to wait for thread to finish before stopping main thread
- add_task(new_task) : Adds a new task obj, if there is no threads running will start one
- get_current_task() : Allows for the current task that is executing to be returned
- tasks_left() : Returns the number of tasks left to be completed, includes currently executing task if any.
- add_from_func(callback, task_name) : used as a decorator which acts as add_task()
Updates:
1.1
- New decorator method that allows for adding to a Task_Queue obj
1.0
First version
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for threaded-task-executor-1.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 888ce0989ed9ed590732794cfb99e870ddfb1693bf03ad6e1d6cb1b3661d87b5 |
|
MD5 | 42bcd58002160768da48ae00b2ea6837 |
|
BLAKE2b-256 | 142c809db51a04536f5e4c6908695336c354c60a2f9e91014310122339b8b0e0 |
Close
Hashes for threaded_task_executor-1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0bb49c0a0b9445827db8d3571e46bd9688b9261735f41d88f8a6a2f67e9a7d8b |
|
MD5 | c885d09388ae6829747867d7b3edba66 |
|
BLAKE2b-256 | f6d3e2492f6ba9e3fedba819fb6efe746b9d8c6595b4e3585b8ee15627bcd944 |