多執行緒請求百度10次
網址:http://www.baidu.com
代碼如下:
from get_html import download
import time
import threading
url = 'http://www.baidu.com'
#普通請求
def test_1():
start = time.perf_counter()
for i in range(10):
html = download(url=url)
print('程式用時',time.perf_counter()-start)
#多執行緒
def test_2():
start = time.perf_counter()
tlist = list()
for i in range(10):
t = threading.Thread(target=download,args=(url,))#args=(url,)傳入的是一個元組
tlist.append(t)
#串列推導式tlist = [threading.Thread(target=download,args=(url,)) for i in range(10)]
[t.start() for t in tlist] #多執行緒程的運行 無序運行,只需要最后結果
[t.join() for t in tlist] #等到執行緒執行完之后 再回到主執行緒中去
print('程式用時', time.perf_counter() - start)
test_1()
test_2()
最后用時:

還是快很多的!學習筆記歡迎交流!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/259744.html
標籤:python
下一篇:用 Python 寫個計算器
