1. 程式人生 > >Python 多執行緒工具包 threading 的超簡單例子

Python 多執行緒工具包 threading 的超簡單例子

筆者初學 Python,在程式設計中,遇到了多執行緒的問題,即需要一個程式中的幾部分同時執行。

例如:給一個後臺程式寫一個“心跳程序”,定時輸出訊號,以確認程式正常執行。

在網上搜索了下發現有不少帖子,但總感覺帖子中舉的例子不夠簡單和直觀,遂決定寫個自己覺得夠簡單直觀的例子。程式碼如下:

import threading  # 匯入 threading 包
import time  # 用來控制時間

def f1():  # 定義函式,從 0 開始,每隔一秒,列印下一個自然數
	n = 0
	while True:
		print(n)
		n = n + 1
		time.
sleep(1) def f2(): # 定義函式,每隔三秒,列印字串 hahaha while True: time.sleep(3) print('hahaha') threading.Thread(target=f1).start() # 開始一個執行緒,執行 f1 函式 threading.Thread(target=f2).start() # 開始另一個執行緒,執行 f2 函式

執行程式碼,會得到以下結果:

0
1
2
hahaha
3
4
5
hahaha
6

程式將一直執行下去。

值得補充的是,筆者剛開始將 target=f1

寫成了 target=f1(),這是錯誤的。因為需要傳遞給 Thread 方法的是函式 f1,而不是其返回值 f1() 。這是個很新手的錯誤。