学习笔记

多线程

by 猪皮怪, 2022-08-20


多线程

from threading import Thread

创建任务

def func(name):
    for i in range(1000):
        print(name,i)

创建线程

如果任务内部有参数需要传递,则在创建线程时给"args"属性,设置相应参数。

t1 = Thread(target=func,args=("1----",))
t2 = Thread(target=func,args=("2++++",))

启动线程

t1.start()
t2.start()

线程池

同时运行多个线程,系统自动管理线程。

from concurrent.futures import ThreadPoolExecutor

创建线程池

表示同时启动20个线程,t.submit()是将任务添加到线程池内,系统自动管理线程。

with ThreadPoolExecutor(20) as t:
    for i in range(10000):
        # 把任务提交到线程池中
        t.submit(func,f'任务{i}')

作者: 猪皮怪

2024 © esia.asia 13 ms