public override void Dispose() { startup.Disposing(this, pluginManager); CoreConfig.save(); PerformanceMonitor.destroyEnabledState(); var sceneController = pluginManager.GlobalScope.ServiceProvider.GetRequiredService <SceneController>(); sceneController.destroyScene(); sceneController.clearResources(); pluginManager.Dispose(); mainWindow.Dispose(); base.Dispose(); logListener.Dispose(); }