public void _OnLoadObject(UnityEngine.Object orgObj, AssetCache cache) { if ((orgObj == null) || (cache == null)) { return; } AssetCache ca; if (!mObjCacheMap.TryGetValue(orgObj.GetInstanceID(), out ca)) { ca = null; } if (ca != null) { if (ca.RefCount == 0) { ca.LastUsedTime = GetCurrentTime(); } return; } // 从Temp列表清除 RemoveTempAsset(cache); // 设置一次时间(防止短时间删除删除) cache.LastUsedTime = GetCurrentTime(); cache.AddObj(orgObj.GetInstanceID()); if (!mCacheSet.Contains(cache)) { mCacheSet.Add(cache); LinkedListNode <AssetCache> node = cache.LinkListNode; mNotUsedCacheList.AddLast(node); } mObjCacheMap.Add(orgObj.GetInstanceID(), cache); }