3using System.Threading.Tasks;
17 public static async Task<T>
LoadAsync<T>(
string path,
string typeHint =
"",
bool useSubThreads =
false,
18 ResourceLoader.CacheMode cacheMode = ResourceLoader.CacheMode.Reuse) where T : Resource
20 var tree = (SceneTree)Engine.GetMainLoop();
21 var error = ResourceLoader.LoadThreadedRequest(path, typeHint, useSubThreads, cacheMode);
23 if (error != Error.Ok)
26 var status = ResourceLoader.LoadThreadedGetStatus(path);
28 while (status != ResourceLoader.ThreadLoadStatus.Loaded)
30 if (status != ResourceLoader.ThreadLoadStatus.InProgress)
33 await tree.ToSignal(tree, SceneTree.SignalName.ProcessFrame);
34 status = ResourceLoader.LoadThreadedGetStatus(path);
37 return (T)ResourceLoader.LoadThreadedGet(path);
Contains methods for loading Resources asynchronously.
static async Task< T > LoadAsync< T >(string path, string typeHint="", bool useSubThreads=false, ResourceLoader.CacheMode cacheMode=ResourceLoader.CacheMode.Reuse)
Loads a Resource from file asynchronously.
Raised if an error is encountered while loading a resource asynchronously.