生命周期(Lifetime)¶
symphra_container.types.Lifetime
¶
Bases: Enum
服务生命周期类型枚举.
定义了服务实例在容器中的生命周期管理策略:
属性:
| 名称 | 类型 | 描述 |
|---|---|---|
SINGLETON |
全局单例,容器中只有一个实例 |
|
TRANSIENT |
瞬时模式,每次解析都创建新实例 |
|
SCOPED |
作用域模式,同一作用域内共享实例 |
|
FACTORY |
工厂模式,使用工厂函数创建实例 |
示例:
>>> container.register(UserService, lifetime=Lifetime.SINGLETON)
>>> service1 = container.resolve(UserService)
>>> service2 = container.resolve(UserService)
>>> assert service1 is service2 # 同一实例