当前位置: 首页 > news >正文

缓存装饰器@cached_property

这个装饰器好像在好多包里都有,我在阅读源码的过程中,transformers.utils也有这个。查阅资料,大体上了解了它的用法。参考:[python]@cached_property缓存装饰器 - faithfu - 博客园

这个装饰器用在类里面的某个方法前面,当实例化这个类,然后第一次调用这个方法的时候会执行一次改方法,返回一个结果,后面如果再调用,就不执行,而是直接返回第一次运行的结果了,避免重复调用,节省了时间。

下面是一个不使用`@cached_property`的例子

此时func1这个函数,就是一个方法,没有被缓存,要是使用这个值那就得用`demo.fun1()`重新运行一遍。

加入`@cached_property`之后,

`demo.fun1`变成了一个类似于属性的东西,可以直接当成属性使用。并且执行一次后,该值将不会改变。

这个装饰器和`@property`是一对,`@property`将方法变成属性,但是访问一次重新执行一次,而`@cached_property`执行一次就不变了。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 如何解决哈希冲突?
  • 828华为云征文 | 云服务器Flexus X实例:RAG 开源项目 FastGPT 部署,玩转大模型
  • 算法揭秘:时间复杂度与空间复杂度的实用指南
  • Docker:解决开发运维问题的开源容器化平台
  • 使用python写按键程序
  • 产品经理面试整理-准备个人案例
  • MySQL关卡任务书
  • 在 Flutter 开发中如何选择状态管理:Provider 和 GetX 比较
  • notepad++的json查看
  • 【通俗易懂】知识图谱增强 RAG 思路 和 实现方案
  • HTTP中的301、302实现重定向
  • css禁止图片保存,CSS中的图片保存方法
  • 9月22日正式签约,树莓集团落子海南!
  • Spring MVC 全局异常 总结
  • 力扣题解1014
  • python3.6+scrapy+mysql 爬虫实战
  • JAVA_NIO系列——Channel和Buffer详解
  • ng6--错误信息小结(持续更新)
  • oschina
  • PHP的Ev教程三(Periodic watcher)
  • React as a UI Runtime(五、列表)
  • Vue ES6 Jade Scss Webpack Gulp
  • Vultr 教程目录
  • 成为一名优秀的Developer的书单
  • 每个JavaScript开发人员应阅读的书【1】 - JavaScript: The Good Parts
  • 我的zsh配置, 2019最新方案
  • Nginx实现动静分离
  • ​十个常见的 Python 脚本 (详细介绍 + 代码举例)
  • ​用户画像从0到100的构建思路
  • # 消息中间件 RocketMQ 高级功能和源码分析(七)
  • #pragma once
  • #ubuntu# #git# repository git config --global --add safe.directory
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (7)svelte 教程: Props(属性)
  • (ctrl.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“
  • (Matlab)使用竞争神经网络实现数据聚类
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (STM32笔记)九、RCC时钟树与时钟 第一部分
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (附源码)计算机毕业设计SSM智能化管理的仓库管理
  • (六)库存超卖案例实战——使用mysql分布式锁解决“超卖”问题
  • (十三)Flask之特殊装饰器详解
  • (一)utf8mb4_general_ci 和 utf8mb4_unicode_ci 适用排序和比较规则场景
  • (译)计算距离、方位和更多经纬度之间的点
  • (转) 深度模型优化性能 调参
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证
  • .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉
  • .NET性能优化(文摘)
  • :class的用法及应用
  • @RequestMapping 的作用是什么?
  • [ Socket学习 ] 第一章:网络基础知识