Beispiel #1
0
        public override void Dispose()
        {
            try
            {
                Process process = Host.TryGetProcess();

                DisposeInteractiveHostProcess(Host);

                // the process should be terminated
                if (process != null && !process.HasExited)
                {
                    process.WaitForExit();
                }
            }
            finally
            {
                // Dispose temp files only after the InteractiveHost exits,
                // so that assemblies are unloaded.
                base.Dispose();
            }
        }