多线程使用互斥锁
发布日期:2022-04-11 08:52:51 浏览次数:12 分类:博客文章

本文共 724 字,大约阅读时间需要 2 分钟。

线程同步能够保证多个线程安全访问竞争资源,最简单的同步机制是引入互斥锁

1 from threading import Thread,Lock 2  3 g_num = 0 4  5 def test1(): 6     global g_num 7     #上锁 8     mutex.acquire() 9     for i in range(100000):10         g_num +=111     #解锁12     mutex.release()13 14     print("test1----g_num= %d"%g_num)15 16 def test2():17     global g_num18     #上锁19     mutex.acquire()20     for i in range(100000):21         g_num += 122     #解锁23     mutex.release()24     print("test2----g_num = %d"%g_num)25 26 27 # 创建互斥锁28 mutex = Lock()29 p1 = Thread(target = test1)30 p1.start()31 32 p2 = Thread(target = test2)33 p2.start()34 35 p1.join()36 p2.join()37 38 print("---g_num---%d"%g_num)

执行结果

test1----g_num= 100000test2----g_num = 200000---g_num---200000

 

转载地址:https://www.cnblogs.com/qiushanjian/p/10340968.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:多线程使用的错误
下一篇:多线程使用~会多少?

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年04月25日 20时44分46秒