| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 | using System;using System.Collections.Generic;namespace YooAsset{	public sealed class AllAssetsOperationHandle : OperationHandleBase, IDisposable	{		private System.Action<AllAssetsOperationHandle> _callback;		internal AllAssetsOperationHandle(ProviderBase provider) : base(provider)		{		}		internal override void InvokeCallback()		{			_callback?.Invoke(this);		}				/// <summary>		/// 完成委托		/// </summary>		public event System.Action<AllAssetsOperationHandle> Completed		{			add			{				if (IsValidWithWarning == false)					throw new System.Exception($"{nameof(AllAssetsOperationHandle)} is invalid");				if (Provider.IsDone)					value.Invoke(this);				else					_callback += value;			}			remove			{				if (IsValidWithWarning == false)					throw new System.Exception($"{nameof(AllAssetsOperationHandle)} is invalid");				_callback -= value;			}		}		/// <summary>		/// 等待异步执行完毕		/// </summary>		public void WaitForAsyncComplete()		{			if (IsValidWithWarning == false)				return;			Provider.WaitForAsyncComplete();		}		/// <summary>		/// 释放资源句柄		/// </summary>		public void Release()		{			this.ReleaseInternal();		}		/// <summary>		/// 释放资源句柄		/// </summary>		public void Dispose()		{			this.ReleaseInternal();		}		/// <summary>		/// 子资源对象集合		/// </summary>		public UnityEngine.Object[] AllAssetObjects		{			get			{				if (IsValidWithWarning == false)					return null;				return Provider.AllAssetObjects;			}		}	}}
 |