public void Start() { Check.Require(!_started, "Service already started"); if (listenMgr.OnStarting() == Cancelable.True) { return; } DoStart(); _started = true; listenMgr.OnStarted(); }