public void Dispose() { lock (kernel.handlersChangedLock) { try { if (kernel.handlersChanged == false) { return; } kernel.DoActualRaisingOfHandlersChanged(); kernel.RaiseRegistrationCompleted(); kernel.handlersChanged = false; } finally { kernel.handlersChangedDeferred = false; } } }