Takes the hassle away from threading functions and getting their results
Project description
Python Threadit
Running functions in threads with no effort
A nice package to help you run functions in threads and get their result.
Installation
pip install threadit
Usage
import time
from threadit import Threadit
def get_company_name():
# Do work in thread
time.sleep(5)
return 'Adapted'
def do_some_work():
get_name = Threadit(get_company_name)
# do stuff or run a while loop to wait for result
more_thread = Threadit(get_company_name)
while get_name.doing_work():
print('Waiting for thread to finnish')
# You can also call .result() and the main thread will wait
# for the thread to return your result.
company_name = get_name.result()
# this will timeout the thread in 1 second if its not finished
company_name2 = more_thread.result(timeout=1)
print(company_name) # Outputs -> Adapted
print(company_name2) # Outputs -> None
Main commands
# Import the module
from threadit import Threadit
# Start your function with or without arguments
var = Threadit(function, args, kwargs)
# Wait for the function to finnish or get the result if its finished
var.result()
Optional commands
# Check if your thread is still working on the function.
# This will return True if the function is not completed.
var.doing_work()
# Terminate the thread. This will noe wait for the function to
# finnish and will return None as result if the function is not
# done within the timelimit set
var.result(timeout=10)
Testing
Use the following command to run tests.
python -m unittest threadit.tests.test_threadit
Changelog:
See CHANGELOG.md
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
threadit-1.0.1.tar.gz
(2.7 kB
view hashes)