Improved parallel plugin management

This commit is contained in:
Thorsten Sommer 2025-04-12 11:33:12 +02:00
parent 1c4da1c5d7
commit 42845eab90
Signed by: tsommer
GPG Key ID: 371BBA77A02C0108

View File

@ -89,15 +89,18 @@ public partial class MainLayout : LayoutComponentBase, IMessageBusReceiver, IDis
// //
if(PreviewFeatures.PRE_PLUGINS_2025.IsEnabled(this.SettingsManager)) if(PreviewFeatures.PRE_PLUGINS_2025.IsEnabled(this.SettingsManager))
{ {
// Ensure that all internal plugins are present: _ = Task.Run(async () =>
await PluginFactory.EnsureInternalPlugins(); {
// Ensure that all internal plugins are present:
await PluginFactory.EnsureInternalPlugins();
// Load (but not start) all plugins, without waiting for them: // Load (but not start) all plugins, without waiting for them:
var pluginLoadingTimeout = new CancellationTokenSource(TimeSpan.FromSeconds(5)); var pluginLoadingTimeout = new CancellationTokenSource(TimeSpan.FromSeconds(5));
_ = PluginFactory.LoadAll(pluginLoadingTimeout.Token); await PluginFactory.LoadAll(pluginLoadingTimeout.Token);
// Set up hot reloading for plugins: // Set up hot reloading for plugins:
PluginFactory.SetUpHotReloading(); PluginFactory.SetUpHotReloading();
});
} }
// Register this component with the message bus: // Register this component with the message bus: