public DebuggingService()
 {
     executionHandlerFactory = new DebugExecutionHandlerFactory (this);
     #if NET_2_0
     attr_handler = new DebugAttributeHandler();
     #endif
 }
        void Cleanup()
        {
            if (!IsDebugging)
                return;

            if (StoppedEvent != null)
                StoppedEvent (this, new EventArgs ());

            backend.Dispose ();
            backend = null;
            console.Dispose ();
            console = null;
            #if NET_2_0
            attr_handler = null;
            #endif
            proc = null;

            if (ExecutionLocationChanged != null)
                ExecutionLocationChanged (this, EventArgs.Empty);
        }