k3jobq
k3jobq processes a series of inputs with functions concurrently
k3jobq is a component of pykit3 project: a python3 toolkit set.
k3jobq is a manager to create cuncurrent tasks.
It processes a series of inputs with functions concurrently and
return once all threads are done::
def add1(args):
return args + 1
def printarg(args):
print(args)
k3jobq.run([0, 1, 2], [add1, printarg])
# > 1
# > 2
# > 3
Install
pip install k3jobq
Synopsis
import k3jobq
if __name__ == "__main__":
def add1(args):
return args + 1
def multi2(args):
return args * 2
def printarg(args):
print(args)
k3jobq.run([0, 1, 2], [add1, printarg])
k3jobq.run((0, 1, 2), [add1, multi2, printarg])
k3jobq.run(list(range(3)), [add1, (multi2, 1), printarg])
k3jobq.run(list(range(3)), [add1, (multi2, 2), printarg])
k3jobq.run(list(range(3)), [add1, (multi2, 2), printarg],
keep_order=True)
k3jobq.run(list(range(3)), [add1, (multi2, 2), printarg],
timeout=0.5)
def drop_even_number(i):
if i % 2 == 0:
return k3jobq.EmptyRst
else:
return i
k3jobq.run(list(range(10)), [drop_even_number, printarg])
Author
Zhang Yanpo (张炎泼) drdr.xp@gmail.com
Copyright and License
The MIT License (MIT)
Copyright (c) 2015 Zhang Yanpo (张炎泼) drdr.xp@gmail.com