async static Task Main() { using await(var resource = new AsyncResource()) { await resource.PerformWorkAsync(); } Console.WriteLine("After the using await statement"); }
public AsyncOperation GetResourceByPathAsync <T>(string path, Action <AsyncResource> callBack, System.Object param) where T : UnityEngine.Object { if (useStreamAsset) { return(null); } else { ResourceRequest resReq = Resources.LoadAsync <T>(path); AsyncResource ar = new AsyncResource(resReq, param); SingleAsyncRes singleRes = new SingleAsyncRes(callBack, ar); m_asyncSingleLoadingRes.Add(singleRes); return(resReq); } }
public AsyncOperation GetResourceByPathAsync(string path, Action <AsyncResource> callBack = null, System.Object param = null) { if (useStreamAsset) { return(null); } else { ResourceRequest resReq = Resources.LoadAsync(path); AsyncResource ar = new AsyncResource(resReq, param); SingleAsyncRes groupRes = new SingleAsyncRes(callBack, ar); m_asyncSingleLoadingRes.Add(groupRes); return(resReq); } }
public void GetResourceByPathAsync(List <string> path, Action <Dictionary <string, AsyncResource> > callBack = null, System.Object param = null) { if (useStreamAsset) { return; } else { Dictionary <string, AsyncResource> item = new Dictionary <string, AsyncResource>(); foreach (string resPath in path) { if (item.ContainsKey(resPath)) { // Debug.Log("same res: "+resPath); continue; } ResourceRequest resReq = Resources.LoadAsync(resPath); AsyncResource ar = new AsyncResource(resReq, param); item.Add(resPath, ar); } GroupAsyncRes groupRes = new GroupAsyncRes(callBack, item); m_asyncGroupLoadingRes.Add(groupRes); } }
public SingleAsyncRes(Action <AsyncResource> callBack, AsyncResource res) { m_callBack = callBack; m_res = res; }