//---------------------------------------------------------------------
        protected override void Dispose(bool disposing)
        {
            lock (this)
            {
                RIEventManager.OnServiceConfigChange -= DoOnConfigChange;

                if (FOwnsRI && FReflectInsight != null)
                {
                    FReflectInsight.Dispose();
                    FReflectInsight = null;
                }
            }

            base.Dispose(disposing);
        }