python 如何控制多线程数量

Python021

python 如何控制多线程数量,第1张

import requests, timefrom threading import Threadclass MyThread(Thread):

def __init__(self, url):

Thread.__init__(self)

self.url = urldef run(self):

open_url(self.url)def open_url(url):

r = requests.get(url[:-1])

print(r.status_code)

print(url)# return urlif __name__ == '__main__':with open("E:/all_domain.txt",'r') as f:

t_start = time.time()

threads = []for url in f:

t = MyThread(url)

threads.append(t)

t.start()

print(len(threads))for i in threads:

i.join()

t_end = time.time()

print('the thread way take %s s' % (t_end - t_start))

python线程如果不进行并发数量控制,在启动线程数量多到一定程度后,会造成线程无法启动的错误。

控制多线程并发数量的方法有好几钟,下面介绍用queue控制多线程并发数量的方法。python3