執行緒間通訊

2022-08-18 01:54:09 字數 764 閱讀 6711

#_author:來童星

#date:2019/12/17

from threading import thread

import time

def plus():

print('子執行緒1開始')

global num

num+=50

print('num is %d'%num)

print('子執行緒1結束')

def minus():

print('子執行緒2開始')

global num

num-=50

print('num is %d'%num)

print('子執行緒2結束')

num=100

if __name__=='__main__':

print('主線程開始')

print('num is %d' % num)

t1=thread(target=plus)

t2=thread(target=minus)

t1.start()

t2.start()

t1.join()

t2.join()

print('主線程結束')

執行結果:

主線程開始

num is 100

子執行緒1開始

num is 150

子執行緒1結束

子執行緒2開始

num is 100

子執行緒2結束

執行緒間通訊

執行緒間通訊 多個執行緒在操作統一資源,但各個執行緒操作的動作不同。資源 class res class input implements runnable public void run else x x 1 2 class output implements runnable public vo...

執行緒間通訊

執行緒間的通訊 在乙個多執行緒的應用程式中,所有執行緒共享程序資源,協同工作。所以,執行緒之間的通訊是編寫多執行緒 應用的必不可少的環節。執行緒之間的通訊包括互斥 同步等,它是多 執行緒設計中最難控制的部分,也是關鍵部分。執行緒間的互斥 1 臨界區 在乙個多執行緒 的應用程式中,可能存在這樣的危險 ...

執行緒間通訊

執行緒間通訊 其實就是多個執行緒在操作同乙個資源 但是操作的動作不同。等待喚醒機制 wait notify 0 notifyall 都使用在同步中,因為要對持有監視器 鎖 的執行緒操作。所以要使用在同步中,因為只有同步才具有鎖 為什麼這些操作執行緒的方法要定義object類中呢?因為這些方法在操作同...