将核心模块按功能重新组织为更清晰的结构,包括 managers、handlers 和 utils 目录 添加完整的开发文档,涵盖快速开始、项目结构、核心概念和插件开发指南 更新所有相关模块的导入路径以匹配新的结构 将单例模式实现提取到单独的 singleton.py 文件
31 lines
787 B
Python
31 lines
787 B
Python
"""
|
|
通用单例模式基类
|
|
"""
|
|
|
|
class Singleton:
|
|
"""
|
|
一个通用的单例基类
|
|
|
|
任何继承自该类的子类都将自动成为单例。
|
|
它通过重写 __new__ 方法来确保每个类只有一个实例。
|
|
同时,它处理了重复初始化的问题,确保 __init__ 方法只在第一次实例化时被调用。
|
|
"""
|
|
_instance = None
|
|
_initialized = False
|
|
|
|
def __new__(cls, *args, **kwargs):
|
|
"""
|
|
创建或返回现有的实例
|
|
"""
|
|
if cls._instance is None:
|
|
cls._instance = super().__new__(cls)
|
|
return cls._instance
|
|
|
|
def __init__(self):
|
|
"""
|
|
确保初始化逻辑只执行一次
|
|
"""
|
|
if self._initialized:
|
|
return
|
|
self._initialized = True
|