コード例 #1
0
        private void RecycleAsset(Asset res, bool isCache)
        {
            res.RefCount -= 1;
            if (res.RefCount > 0)
            {
                return;
            }

            if (!_assetDict.Remove(res.Info))
            {
                throw new ArgumentException($"资源池中无该资源{res}");
            }

            _objInquiryDict.Remove(res.resource);
            if (isCache)
            {
                _noRef.AddFirst(res);
            }
            else
            {
                AssetBundleManager.Instance.ReleaseAsset(res.Info);
            }
        }