下面,通過乙個簡單的例子,來把多執行緒和單執行緒執行任務的耗時做個比較
import time
import threading
defmusic
(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)
defmovie
(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
(% start_time)
print
(% end_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
(% start_time)
print
(% end_time)
# 最後的結束時間
print
("總共耗時:秒"
.format
(end_time - start_time)
)# 格式輸出耗時
多執行緒增加增加:t3執行緒
單執行緒增加:movie(『少林足球』, 2)
結論:多執行緒,增加執行緒後,執行時間基本上沒變,總耗時還是等於耗時最多的執行緒所花費的時間;單執行緒則是線性的增加。另外,多執行緒的啟動時間有極微小差異。
python多執行緒用法及與單執行緒耗時比較
下面,通過乙個簡單的例子,來把多執行緒和單執行緒執行任務的耗時做個比較 import time import threading def music func,loop for i in range loop print i was listening to s the d time s func,...
c單執行緒及多執行緒處理python
參考 include 其他初始化處理 pcrespjson 接收python函式返回值 如果有的話 const char pcrespjson null python 物件初始化 pyobject pstname null pyobject pstmodule null pyobject pstfu...
一 單執行緒與多執行緒
一 多執行緒的例子 公司樓下有一家超市加做 永輝超市 下班了就去裡面買點菜,回去做做自己喜歡的飯菜。如果進去逛一圈,會發現它的收銀台是這樣的 它有好幾個收銀台,每個收銀台有乙個收銀員。付費的時候你可以選擇任意一條 我相信你肯定會選擇人最少的那一條 二 單執行緒的例子 除了這種大中型的超市,下班途中還...