Microsoft.R.Debugger.AD7Engine.Dispose C# (CSharp) Method

Dispose() public method

public Dispose ( ) : void
return void
        public void Dispose() {
            if (IsDisposed) {
                return;
            }

            Tracer.Browse -= Tracer_Browse;
            Session.AfterRequest -= Session_AfterRequest;
            Session.Disconnected -= Session_Disconnected;

            var sessionProvider = WorkflowProvider.GetOrCreate().RSessions;
            sessionProvider.BrokerChanged -= SessionProvider_BrokerChanged;

            _events = null;
            _program = null;

            MainThread.Dispose();
            MainThread = null;

            Tracer = null;

            ExitBrowserAsync(Session).DoNotWait();
            Session = null;

            IsDisposed = true;
        }