multithreading way

2023-03-12  本文已影响0人  逢笔生辉

from concurrent.futuresimport ThreadPoolExecutor

import threading

import time

# 定义一个准备作为线程任务的函数

def action(max):

my_sum =0

    for iin range(max):

print(threading.current_thread().name +'  ' +str(i))

my_sum += i

return my_sum

# 创建一个包含2条线程的线程池

pool = ThreadPoolExecutor(max_workers=2)

# 向线程池提交一个task, 50会作为action()函数的参数

future1 = pool.submit(action, 50)

# 向线程池再提交一个task, 100会作为action()函数的参数

future2 = pool.submit(action, 100)

# 判断future1代表的任务是否结束

print(future1.done())

time.sleep(3)

# 判断future2代表的任务是否结束

print(future2.done())

# 查看future1代表的任务返回的结果

print(future1.result())

# 查看future2代表的任务返回的结果

print(future2.result())

# 关闭线程池

pool.shutdown()

上一篇 下一篇

猜你喜欢

热点阅读