diff --git a/IPA.Loader/Config/ConfigRuntime.cs b/IPA.Loader/Config/ConfigRuntime.cs index ac1ab542..7fb35ef3 100644 --- a/IPA.Loader/Config/ConfigRuntime.cs +++ b/IPA.Loader/Config/ConfigRuntime.cs @@ -119,8 +119,13 @@ namespace IPA.Config public static Task TriggerFileLoad(Config config) => loadFactory.StartNew(() => LoadTask(config)); - public static Task TriggerLoadAll() - => Task.WhenAll(configs.Select(TriggerFileLoad)); + public static Task TriggerLoadAll() => +#if NET3 + TaskEx +#else + Task +#endif + .WhenAll(configs.Select(TriggerFileLoad)); /// /// this is synchronous, unlike diff --git a/IPA.Loader/Loader/PluginLoader.cs b/IPA.Loader/Loader/PluginLoader.cs index 3db18798..6b4ef6b2 100644 --- a/IPA.Loader/Loader/PluginLoader.cs +++ b/IPA.Loader/Loader/PluginLoader.cs @@ -26,7 +26,12 @@ namespace IPA.Loader /// public class PluginLoader { - internal static Task LoadTask() => Task.Factory.StartNew(() => + internal static Task LoadTask() => +#if NET3 + TaskEx.Run(() => +#else + Task.Run(() => +#endif { YeetIfNeeded();