threading提供了一個比thread模塊更高層的API來提供線程的並發性。這些線程並發運行並共享內存。
下面來看threading模塊的具體用法:
一、Thread的使用 目標函數可以實例化一個Thread對象,每個Thread對象代表着一個線程,可以通過start()方法,開始運行。
這里對使用多線程並發,和不適用多線程並發做了一個比較:
首先是不使用多線程的操作:
代碼如下:
#!/usr/bin/python #compare for multi threads import time def worker(): print("worker") time.sleep(1) return if __name__ == "__main__": for i in range(5): worker()
執行結果如下:
下面是使用多線程並發的操作:
代碼如下:
#!/usr/bin/python import threading import time def worker(): print("worker") time.sleep(1) return for i in range(5): t = threading.Thread(target=worker) t.start()
可以明顯看出使用了多線程並發的操作,花費時間要短的很多