namespace TEngine { internal partial class ResourceModule { private IObjectPool _assetPool; /// /// 获取或设置资源对象池自动释放可释放对象的间隔秒数。 /// public float AssetAutoReleaseInterval { get => _assetPool.AutoReleaseInterval; set => _assetPool.AutoReleaseInterval = value; } /// /// 获取或设置资源对象池的容量。 /// public int AssetCapacity { get => _assetPool.Capacity; set => _assetPool.Capacity = value; } /// /// 获取或设置资源对象池对象过期秒数。 /// public float AssetExpireTime { get => _assetPool.ExpireTime; set => _assetPool.ExpireTime = value; } /// /// 获取或设置资源对象池的优先级。 /// public int AssetPriority { get => _assetPool.Priority; set => _assetPool.Priority = value; } /// /// 卸载资源。 /// /// 要卸载的资源。 public void UnloadAsset(object asset) { if (_assetPool != null) { _assetPool.Unspawn(asset); } } /// /// 设置对象池管理器。 /// /// 对象池管理器。 public void SetObjectPoolModule(IObjectPoolModule objectPoolModule) { if (objectPoolModule == null) { throw new GameFrameworkException("Object pool manager is invalid."); } _assetPool = objectPoolModule.CreateMultiSpawnObjectPool("Asset Pool"); } } }