- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
public function FooClass() {
if (!_isConstructing) throw new Error("Singleton, use FooClass.instance");
}
public static function get instance():FooClass {
if (_instance == null) {
_isConstructing = true;
_instance = new FooClass();
_isConstructing = false;
}
return _instance;
}
Я надеюсь, что _isConstructing хотя бы в привате :)
У меня на любую лишнюю сущность жестокая аллергия (
Но сейчас думаю, что оно нафиг не нужно - такая защита, да и синглтон редко нужен