2025-01-09 11:31:04 +08:00
|
|
|
|
|
|
|
|
|
namespace YooAsset
|
|
|
|
|
{
|
|
|
|
|
public abstract class GameAsyncOperation : AsyncOperationBase
|
|
|
|
|
{
|
2025-02-28 16:11:01 +08:00
|
|
|
|
internal override void InternalStart()
|
2025-01-09 11:31:04 +08:00
|
|
|
|
{
|
|
|
|
|
OnStart();
|
|
|
|
|
}
|
2025-02-28 16:11:01 +08:00
|
|
|
|
internal override void InternalUpdate()
|
2025-01-09 11:31:04 +08:00
|
|
|
|
{
|
|
|
|
|
OnUpdate();
|
|
|
|
|
}
|
2025-02-28 16:11:01 +08:00
|
|
|
|
internal override void InternalAbort()
|
2025-01-09 11:31:04 +08:00
|
|
|
|
{
|
|
|
|
|
OnAbort();
|
|
|
|
|
}
|
|
|
|
|
internal override void InternalWaitForAsyncComplete()
|
|
|
|
|
{
|
|
|
|
|
OnWaitForAsyncComplete();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 异步操作开始
|
|
|
|
|
/// </summary>
|
|
|
|
|
protected abstract void OnStart();
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 异步操作更新
|
|
|
|
|
/// </summary>
|
|
|
|
|
protected abstract void OnUpdate();
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 异步操作终止
|
|
|
|
|
/// </summary>
|
|
|
|
|
protected abstract void OnAbort();
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 异步等待完成
|
|
|
|
|
/// </summary>
|
|
|
|
|
protected virtual void OnWaitForAsyncComplete() { }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 异步操作系统是否繁忙
|
|
|
|
|
/// </summary>
|
|
|
|
|
protected bool IsBusy()
|
|
|
|
|
{
|
|
|
|
|
return OperationSystem.IsBusy;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 终止异步操作
|
|
|
|
|
/// </summary>
|
|
|
|
|
protected void Abort()
|
|
|
|
|
{
|
2025-02-28 16:11:01 +08:00
|
|
|
|
AbortOperation();
|
2025-01-09 11:31:04 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|