python3 多線程的基本用法

jopen 9年前發布 | 23K 次閱讀 Python開發 Python3

#coding=utf-8
import threading #導入threading包
from time import sleep
import time

def task1(): print ("Task 1 executed." ) sleep(1)

def task2(): print ("Task 2 executed." ) sleep(5)

print("多線程:") starttime=time.time(); #記錄開始時間 threads = [] #創建一個線程列表,用于存放需要執行的子線程 t1 = threading.Thread(target=task1) #創建第一個子線程,子線程的任務是調用task1函數,注意函數名后不能有() threads.append(t1)#將這個子線程添加到線程列表中 t2 = threading.Thread(target=task2)#創建第二個子線程 threads.append(t2)#將這個子線程添加到線程列表中

for t in threads: #遍歷線程列表 t.setDaemon(True) #將線程聲明為守護線程,必須在start() 方法調用之前設置,如果不設置為守護線程程序會被無限掛起 t.start() #啟動子線程 endtime=time.time();#記錄程序結束時間 totaltime=endtime-starttime;#計算程序執行耗時 print ("耗時:{0:.5f}秒" .format(totaltime)); #格式輸出耗時 print('---------------------------')

以下為普通的單線程執行過程,不需解釋

print("單線程:") starttime=time.time(); task1(); task2(); endtime=time.time(); totaltime=endtime-starttime; print ("耗時:{0:.5f}秒" .format(totaltime));</pre>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!