下面,通過乙個簡單的例子,來把多執行緒和單執行緒執行任務的耗時做個比較
import timeimport threading
def music(func, loop):
for i in range(loop):
print("i was listening to %s the %d time! %s" % (func, i+1, time.time()))
time.sleep(2)
def movie(func, loop):
for i in range(loop):
print("i was watching %s the %d time! %s" % (func, i+1, time.time()))
time.sleep(5)
# 建立執行緒陣列
threads =
# 建立執行緒t1,並新增到執行緒陣列
t1 = threading.thread(target=music, args=('十年',2)) # 已經建立好的乙個執行緒
# 建立執行緒t2,並新增到執行緒陣列
t2 = threading.thread(target=movie, args=('瘋狂動物城', 2)) # args是乙個元組
# 建立執行緒t3,並新增到執行緒陣列
# t3 = threading.thread(target=movie, args=('少林足球', 2))
print(threads)
if __name__ == '__main__':
print("多執行緒".center(20,'*'))
start_time = time.time()
# 啟動執行緒
for t in threads:
t.start() # 所有執行緒啟動
for t in threads:
t.join() # 守護執行緒
end_time = time.time()
print("總共耗時:秒".format(end_time - start_time)) # 格式輸出耗時
print('\n')
print("單執行緒".center(20, '*'))
start_time = time.time()
music('十年',2)
movie('瘋狂動物城', 2)
# movie('少林足球', 2)
end_time = time.time()
print("總共耗時:秒".format(end_time - start_time)) # 格式輸出耗時
多執行緒增加增加:t3執行緒
單執行緒增加:movie('少林足球', 2)
結論:多執行緒,增加執行緒後,執行時間基本上沒變,總耗時還是等於耗時最多的執行緒所花費的時間;單執行緒則是線性的增加。另外,多執行緒的啟動時間有極微小差異。
python多執行緒用法及與單執行緒耗時比較
下面,通過乙個簡單的例子,來把多執行緒和單執行緒執行任務的耗時做個比較 import time import threading defmusic func,loop for i in range loop print i was listening to s the d time s func,i...
c單執行緒及多執行緒處理python
參考 include 其他初始化處理 pcrespjson 接收python函式返回值 如果有的話 const char pcrespjson null python 物件初始化 pyobject pstname null pyobject pstmodule null pyobject pstfu...
一 單執行緒與多執行緒
一 多執行緒的例子 公司樓下有一家超市加做 永輝超市 下班了就去裡面買點菜,回去做做自己喜歡的飯菜。如果進去逛一圈,會發現它的收銀台是這樣的 它有好幾個收銀台,每個收銀台有乙個收銀員。付費的時候你可以選擇任意一條 我相信你肯定會選擇人最少的那一條 二 單執行緒的例子 除了這種大中型的超市,下班途中還...