mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-05-07 00:39:00 +08:00
- 拆分 TestObjectPool 与 TestPoolableObject 到 Pool 同目录独立文件 - 保留并补充对象池测试辅助类型的 XML 文档与命名空间一致性 - 验证 GFramework.Core.Tests Release 构建通过且当前切片无新增 warning
59 lines
1.5 KiB
C#
59 lines
1.5 KiB
C#
using GFramework.Core.Abstractions.Pool;
|
|
|
|
namespace GFramework.Core.Tests.Pool;
|
|
|
|
/// <summary>
|
|
/// 供对象池测试使用的池化对象,记录生命周期回调是否被触发。
|
|
/// </summary>
|
|
public class TestPoolableObject : IPoolableObject
|
|
{
|
|
/// <summary>
|
|
/// 获取或设置对象所属的池键。
|
|
/// </summary>
|
|
public string PoolKey { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// 获取或设置测试中写入的整数值。
|
|
/// </summary>
|
|
public int TestValue { get; set; }
|
|
|
|
/// <summary>
|
|
/// 获取或设置对象获取回调是否已执行。
|
|
/// </summary>
|
|
public bool OnAcquireCalled { get; set; }
|
|
|
|
/// <summary>
|
|
/// 获取或设置对象释放回调是否已执行。
|
|
/// </summary>
|
|
public bool OnReleaseCalled { get; set; }
|
|
|
|
/// <summary>
|
|
/// 获取或设置对象销毁回调是否已执行。
|
|
/// </summary>
|
|
public bool OnPoolDestroyCalled { get; set; }
|
|
|
|
/// <summary>
|
|
/// 在对象被对象池取出时记录回调执行状态。
|
|
/// </summary>
|
|
public void OnAcquire()
|
|
{
|
|
OnAcquireCalled = true;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 在对象被归还到对象池时记录回调执行状态。
|
|
/// </summary>
|
|
public void OnRelease()
|
|
{
|
|
OnReleaseCalled = true;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 在对象因容量限制或清池而销毁时记录回调执行状态。
|
|
/// </summary>
|
|
public void OnPoolDestroy()
|
|
{
|
|
OnPoolDestroyCalled = true;
|
|
}
|
|
}
|