Python编程之线程中的信息隔离!这才叫Python!
Posted sm123456
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python编程之线程中的信息隔离!这才叫Python!相关的知识,希望对你有一定的参考价值。
大家好, 并发编程
进入第三篇。
上班第一天,大家应该比较忙吧。小明也是呢,所以今天的内容也很少。只要几分钟就能学完。
昨天我们说,线程与线程之间要通过消息通信来控制程序的执行。
讲完了消息通信,今天就来探讨下线程里的 信息隔离
是如何做到的。
大家注意:
信息隔离
,这并不是官方命名的名词,也不是网上广为流传的名词。是我为了方便理解而自创的,大家知道就好咯。
本文目录
-
初步认识信息隔离
-
信息隔离的意义何在
. 初步认识信息隔离
什么是 信息隔离
?
比如说,咱有两个线程,线程A里的变量,和线程B里的变量值不能共享。这就是 信息隔离
。
你可能要说,那变量名取不一样不就好啦?
是的,如果所有的线程都不是由一个class实例化出来的同一个对象,确实是可以。这个问题我们暂且挂着,后面我再说明。
那么,如何实现 信息隔离
呢?
在Python中,其提供了 threading.local
这个类,可以很方便的控制变量的隔离,即使是同一个变量,在不同的线程中,其值也是不能共享的。
用代码来看下
友情提醒:
以下代码,若要理解,可能需要你了解下socket的网络编程相关内容。我在前几天的文章中有发布一篇相关的文章,没有基础的同学可以先去看看那篇文章。
大家也可以关注一下这个程序员的博客哦
欢迎大家加入万人交流群:125240963
以上是关于Python编程之线程中的信息隔离!这才叫Python!的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot + MDC 实现全链路调用日志跟踪,这才叫优雅。。