這篇文章主要介紹了python3爬蟲中怎么使用time記錄多線程時間,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
# 順序執行test1,test2
import time
def test1(arg1):
print("啟動任務1")
print("任務1的參數為{}".format(arg1))
time.sleep(5)
print("結束任務1")
def test2(arg2):
print("啟動任務2")
print("任務2的參數為{}".format(arg2))
time.sleep(2)
print("結束任務2")
def main():
start_time = time.time()
test1("ONE")
test2("TWO")
end_time = time.time()
total_time = end_time - start_time
print("所有任務結束,總耗時為:{}".format(total_time))
if __name__ == "__main__":
main()
這里我們順序執行兩個函數,用time.sleep()強制休息幾秒鐘,代替程序執行時間。然后用time.time()記錄總耗時。

可以看到,順序執行時,程序主要耗時在time.sleep()上,這與我們考慮的是一樣的,打印語句基本不耗時間。
再來看下使用線程的執行時間。
# 同時執行test1,test2
import time
import threading
def test1(arg1):
print("啟動任務1")
print("任務1的參數為{}".format(arg1))
time.sleep(5)
print("結束任務1")
def test2(arg2):
print("啟動任務2")
print("任務2的參數為{}".format(arg2))
time.sleep(2)
print("結束任務2")
def main():
start_time = time.time()
t1 = threading.Thread(target=test1,args=("ONE",))
t2 = threading.Thread(target=test2,args=("TWO",))
t1.start()
t2.start()
# 等待兩個子線程結束再結束主線程
t1.join()
t2.join()
end_time = time.time()
total_time = end_time - start_time
print("所有任務結束,總耗時為:{}".format(total_time))
if __name__ == "__main__":
main()感謝你能夠認真閱讀完這篇文章,希望小編分享python3爬蟲中怎么使用time記錄多線程時間內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。