python高级编程学习——08—(共享全局变量资源竞争、互斥锁、死锁、线程同步、多任务版udp聊天)
1、 共享全局变量资源竞争 前面文章介绍了一个线程写入,一个线程读取,没问题, 但是如果两个线程都写入会造成阻塞 import threading num = 0 def demo1 ( nums ) : global num for i in range ( nums ) : num += 1 print ( 'demo1--------%d' % num ) # demo1--------1171003 数值异常就是资源竞争的结果 def demo2 ( nums ) : global num for i in range ( nums ) : num += 1 print ( 'demo2--------%d' % num ) # demo2--------1262790 数值异常就是资源竞争的结果 def main ( ) : t1 = threading . Thread ( target = demo1 , args = ( 1000000 , ) ) t2 = threading . Thread ( target = demo2 , args = ( 1000000 , ) ) t1 . start ( ) t2 . start ( ) print ( 'main-------%d' % num ) # main-------541178 if __name__ =