private static void ProgramExit() { Ptc.Dispose(); PtcProfiler.Dispose(); Logger.Shutdown(); }
public static void Exit() { DiscordIntegrationModule.Exit(); Ptc.Dispose(); PtcProfiler.Dispose(); Logger.Shutdown(); }
private static void Glib_UnhandledException(GLib.UnhandledExceptionArgs e) { Exception exception = e.ExceptionObject as Exception; Logger.PrintError(LogClass.Application, $"Unhandled exception caught: {exception}"); Ptc.Close(); PtcProfiler.Stop(); if (e.IsTerminating) { Logger.Shutdown(); Ptc.Dispose(); PtcProfiler.Dispose(); } }
private void End(HLE.Switch device) { #if USE_DEBUGGING _debugger.Dispose(); #endif if (_ending) { return; } _ending = true; if (device != null) { UpdateGameMetadata(device.Application.TitleIdText); if (_glWidget != null) { // We tell the widget that we are exiting _glWidget.Exit(); // Wait for the other thread to dispose the HLE context before exiting. _deviceExitStatus.WaitOne(); } } Dispose(); Profile.FinishProfiling(); DiscordIntegrationModule.Exit(); Ptc.Dispose(); PtcProfiler.Dispose(); Logger.Shutdown(); Application.Quit(); }