5 лет назад
История
README.md
PriorityThreadPoolExecutor
Little hack of ThreadPoolExecutor from concurrent.futures.thread: thread pool executor with priority queue (priorities must be different, lowest first). Priority can be any integer value except sys.maxsize
Example:
import time
from priority_thread_pool_executor import PriorityThreadPoolExecutor
def print_number(number, seconds=3):
print('Start %s' % number)
time.sleep(seconds)
print('Stop %s' % number)
if __name__ == '__main__':
pool = PriorityThreadPoolExecutor(max_workers=1)
with pool:
for x in range(10):
pool.submit(print_number, x-1, 1, priority=9-x)
Result:
Start -1
Stop -1
Start 8
Stop 8
Start 7
Stop 7
Start 6
Stop 6
Start 5
Stop 5
Start 4
Stop 4
Start 3
Stop 3
Start 2
Stop 2
Start 1
Stop 1
Start 0
Stop 0
Threads run according to priority
Описание
Little hack of ThreadPoolExecutor from concurrent.futures.thread: thread pool executor with priority queue (priorities must be different, lowest first). Priority can be any integer value except sys.maxsize.
Конвейеры
0 успешных
0 с ошибкой