python中的多线程-共享全局变量

  • 在一个进程内的所有线程共享全局变量,能够在不适用其他方式的前提下完成多线程之间的数据共享(这点要比多进程要好)
  • 缺点就是,线程是对全局变量随意遂改可能造成多线程之间对全局变量的混乱(即线程非安全)

 

案例:

from threading import Thread

import time

 

num = 0  # 资源竞争问题

 

deffun1():

    global num

    for i in range(1000000):

        num += 1

 

deffun2():

    global num

    for i in range(1000000):

        num += 1

 

t1 = Thread(target=fun1)  # 创建一个线程对象

t2 = Thread(target=fun2)  # 创建一个线程对象

 

t1.start()  #开启线程的执行

t2.start()

 

t1.join() # 回收线程资源

t2.join()

 

print(num)

 

 

你可能感兴趣的:(python初级教程,人生苦短,我用Python!)