import concurrent.futures
import time
def test_fun(data):
time.sleep(2)
return data
if __name__ == '__main__':
a = [1, 2, 3, 4, 5, 6, 7]
with concurrent.futures.ThreadPoolExecutor(max_workers=7) as executor:
future_to_print = {executor.submit(test_fun, num): num for num in a}
for future in concurrent.futures.as_completed(future_to_print):
req = future_to_print[future]
print(req)