import threading
# import time
# 创建一个互斥锁
mutex = threading.Lock()
g_num = 0
def tele(num):
global g_num
for i in range(num):
mutex.acquire() # 上锁
g_num += 1
mutex.release() # 解锁
print(g_num)
def tele1(num):
global g_num
for i in range(num):
mutex.acquire()
g_num += 1
mutex.release()
print(g_num)
def main():
t1 = threading.Thread(target=tele,args=(1000000,))
t2 = threading.Thread(target=tele,args=(1000000,))
t1.start()
t2.start()
# time.sleep(2)
t1.join()
t2.join()
print(g_num)
if __name__ == '__main__':
main()
结果: