专栏名称: Python猫
喵生苦短,必须优雅!从喵星来到地球,我爱上了Python,变得优雅而智能。现在我给大家讲讲喵星的故事:喵~妙~,喵~妙~,喵~妙~妙~~~
今天看啥  ›  专栏  ›  Python猫

Python 中弱引用的神奇用法与原理探析

Python猫  · 公众号  ·  · 2021-10-09 20:14
剧照 | 《基地》背景开始讨论弱引用( weakref )之前,我们先来看看什么是弱引用?它到底有什么作用?假设我们有一个多线程程序,并发处理应用数据:# 占用大量资源,创建销毁成本很高class Data:    def __init__(self, key):        pass应用数据 Data 由一个 key 唯一标识,同一个数据可能被多个线程同时访问。由于 Data 需要占用很多系统资源,创建和消费的成本很高。我们希望 Data 在程序中只维护一个副本,就算被多个线程同时访问,也不想重复创建。为此,我们尝试设计一个缓存中间件 Cacher :import threading# 数据缓存class Cacher:    def __init__(self):        self.pool = {}        self.lock = threading.Lock()    def get(self, key):        with self.lock:      



文章无法展示全部,请购买VIP后 使用网页访问内容 或者 使用第三方RSS订阅工具访问内容





今天看啥 - 让阅读更高品质
本文地址:http://www.jintiankansha.me/t/BCU6szmgnx