Skip to main content

A small module to support automation of generating valid python variable names from external data.

Project description

threaders

threaders is a small module to help write

clean threaded code using threading decorators

and minimize repeating copy-paste actions.

Installing

Install and update using pip:

pip install -U threaders

A Simple Example:

from threaders import threaders

import time

@threaders.threader()

def function_to_be_threaded(x):

“”” :rtype: Thread “””

t = time.time()

time.sleep(0.5*(x+0.1)/5+0.05)

return time.time()-t

def main():

# create threads

threads = []

for i in range(10):

threads.append(function_to_be_threaded(i))

# get first result

print(threaders.get_first_result(threads))

# kill threads

t = time.time()

for thread in threads:

thread.join()

print(“all threads terminated: {}”.format(time.time()-t))

if __name__ == “__main__”:

main()

Example with a thread pool:

from random import randrange

from time import sleep

import threading

delays = [randrange(1, 3) for i in range(50)]

print_lock = threading.Lock()

def wait_delay(i, d):

with print_lock:

print(‘{} sleeping for ({})sec’.format(i, d))

sleep(d)

pool = threaders.ThreadPool(10)

for i, d in enumerate(delays):

pool.put(wait_delay, i, d)

pool.join()

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for threaders, version 0.2.13
Filename, size File type Python version Upload date Hashes
Filename, size threaders-0.2.13-py2.py3-none-any.whl (10.5 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size threaders-0.2.13.tar.gz (12.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page