63 - 在线程中如何创建和使用全局对象

举报
ruochen 发表于 2021/03/28 02:08:41 2021/03/28
【摘要】 如何创建和使用在线程内部用的全局对象 ''' threading.local() local类用于创建一个全局对象,不过改该对象只能在线程内部使用,也就是说吗,全局是针对一个线程而言的 ''' import threading import time a = threading.local() def worker(): a.x = 0 for i in rang...

如何创建和使用在线程内部用的全局对象

'''
threading.local()
local类用于创建一个全局对象,不过改该对象只能在线程内部使用,也就是说吗,全局是针对一个线程而言的
'''
import threading
import time

a = threading.local()

def worker(): a.x = 0 for i in range(20): time.sleep(0.01) a.x += 1 print(threading.current_thread(), a.x)


if __name__ == '__main__': for i in range(10): threading.Thread(target=worker).start()

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
<Thread(Thread-6, started 24600)> 20
<Thread(Thread-12, started 12432)> 20
<Thread(Thread-10, started 23456)> 20
<Thread(Thread-11, started 16156)> 20
<Thread(Thread-9, started 22104)><Thread(Thread-13, started 11292)> 20<Thread(Thread-7, started 3968)> 20

<Thread(Thread-14, started 15756)> 20
<Thread(Thread-8, started 11416)> 20
<Thread(Thread-15, started 10864)> 20
 20

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

64 - 你了解协程吗?

文章来源: ruochen.blog.csdn.net,作者:若尘,版权归原作者所有,如需转载,请联系作者。

原文链接:ruochen.blog.csdn.net/article/details/104851620

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。