TEngine 6

This commit is contained in:
Alex-Rachel
2025-03-07 23:09:46 +08:00
parent aad8ff3ee5
commit 551727687f
1988 changed files with 46223 additions and 94880 deletions

View File

@@ -3,18 +3,37 @@ using System.Collections;
namespace YooAsset
{
public abstract class HandleBase : IEnumerator
public abstract class HandleBase : IEnumerator, IDisposable
{
private readonly AssetInfo _assetInfo;
internal ProviderBase Provider { private set; get; }
internal ProviderOperation Provider { private set; get; }
internal HandleBase(ProviderBase provider)
internal HandleBase(ProviderOperation provider)
{
Provider = provider;
_assetInfo = provider.MainAssetInfo;
}
internal abstract void InvokeCallback();
/// <summary>
/// 释放资源句柄
/// </summary>
public void Release()
{
if (IsValidWithWarning == false)
return;
Provider.ReleaseHandle(this);
Provider = null;
}
/// <summary>
/// 释放资源句柄
/// </summary>
public void Dispose()
{
this.Release();
}
/// <summary>
/// 获取资源信息
/// </summary>
@@ -29,9 +48,7 @@ namespace YooAsset
public DownloadStatus GetDownloadStatus()
{
if (IsValidWithWarning == false)
{
return DownloadStatus.CreateDefaultStatus();
}
return Provider.GetDownloadStatus();
}
@@ -44,7 +61,6 @@ namespace YooAsset
{
if (IsValidWithWarning == false)
return EOperationStatus.None;
return Provider.Status;
}
}
@@ -83,7 +99,7 @@ namespace YooAsset
get
{
if (IsValidWithWarning == false)
return false;
return true;
return Provider.IsDone;
}
}
@@ -124,24 +140,18 @@ namespace YooAsset
}
}
/// <summary>
/// 释放句柄
/// </summary>
internal void ReleaseInternal()
{
if (IsValidWithWarning == false)
return;
Provider.ReleaseHandle(this);
Provider = null;
}
#region
/// <summary>
/// 异步操作任务
/// </summary>
public System.Threading.Tasks.Task Task
{
get { return Provider.Task; }
get
{
if (IsValidWithWarning == false)
return null;
return Provider.Task;
}
}
// 协程相关