【语法】单例模式

Python中的单例模式的几种实现方式的及优化 - 听风。 - 博客园 (cnblogs.com)

【理解】

【使用场景】目的是保障一个类只会创建一个实例对象,实际使用的时候配置管理类、日志记录类中有使用到。 

【单例模式实现方式】 

  • python 模块,缺点实例对象的参数是固定的不可变更
  • 装饰器,缺点:
  • 使用类
  • 基于__new__实现(推荐使用,方便)
    •   底层逻辑:重写类的__new__方法来控制实例的创建。 当创建实例对象时,会调用__new__ 来进行创建,在__new__ 中判断类对象中是否有“_instance” 属性,如果存在的直接返回其属性值;如果不存在则创建新对象并给“_instance” 赋值
    • 多线程场景,注意使用线程锁,保证操作原子化

posted on 2024-12-13 14:04  张凌赫_帅  阅读(17)  评论(1)    收藏  举报

导航