From e0a6c92e75b903418f4ecc014b00ae29dbd1f7c3 Mon Sep 17 00:00:00 2001 From: Mia von Steinkirch Date: Mon, 2 Mar 2020 19:13:42 -0800 Subject: [PATCH] add concurrenc future example --- .../concurrence_future_example.py | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 Concurrence_examples/concurrence_future_example.py diff --git a/Concurrence_examples/concurrence_future_example.py b/Concurrence_examples/concurrence_future_example.py new file mode 100644 index 0000000..90d9045 --- /dev/null +++ b/Concurrence_examples/concurrence_future_example.py @@ -0,0 +1,23 @@ +import random +import logging +import concurrent.futures + +WORKER_COUNT = 10 +JOB_COUNT = 10 + +class Job: + def __init__(self, number): + self.number = number + +def process_job(job): + # Wait between 0 and 0.01 seconds. + time.sleep(random.random()/100.0) + logging.info("Job number {:d}".format(job.number)) + +def main(): + with concurrent.futures.ThreadPoolExecutor( + max_workers=WORKER_COUNT) as executor: + futures = [executor.submit(process_job, Job(i)) + for i in range(JOB_COUNT)] + for future in concurrent.futures.as_completed(futures): + pass \ No newline at end of file