public ResourceInstance LoadPrefabAsync(string path, Action <ResourceInstance> loaded = null) { var resIns = prefabList.Find(item => item.path == path); if (resIns == null) { resIns = new ResourceInstance(path); if (loaded != null) { resIns.OnLoaded += loaded; } prefabList.Add(resIns); StartCoroutine(resIns.StartLoad()); return(resIns); } else { return(resIns); } }