簡單的python多線程實例


今天抽時間又學了一下python的多線程,理解的又多了一些,為了利於理解,寫了一段很簡單的代碼,如下:

import threading
from time import sleep


def task1():      #線程函數1
    for i in range(0, 9):
        print("i am thread one !!")


def task2(name):    #線程函數2
    print('hello {0} {1}'.format(name, 'weiyang'))
    sleep(1)


t1 = threading.Thread(target=task1, )      #線程一,Thread函數有兩個參數,第一個是要調用的線程函數,第二個是要給所調用的線程函數所傳的參數,以元組的形式傳入,如果只有一個參數,則必須在后面加上一個',’ ,要不會報錯。
t2 = threading.Thread(target=task2, args=('zhang', )) #線程二
t1.start()                  #開始線程一
#  t1.join() t2.start()                  #開始線程二

 看一下輸出結果:

 可以看到,在線程一還沒執行結束時,線程二就已經開始了,這說明兩個線程之間的工作室相互獨立、互不影響的。

如果想要讓線程一執行完之后再開始線程二,可以在t1.start()的后面加一句t1.join(),這個函數的意義是線程等待,程序會停留在這里,等線程一執行完之后再繼續執行下面的代碼。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM