From 1690ac70057165cf2e760e707aaf4129f3f5bb31 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=99=88=E6=80=9D=E6=B5=B7?= <1464576565@qq.com>
Date: Thu, 26 Mar 2026 17:53:07 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96Object=20Pool=20=201.?=
=?UTF-8?q?=E4=BC=98=E5=8C=96GC=20=202.=E4=BC=98=E5=8C=96=E6=AF=8F?=
=?UTF-8?q?=E7=83=AD=E8=B7=AF=E5=BE=84=203.=E6=97=A7=E4=BB=A3=E7=A0=81?=
=?UTF-8?q?=E5=88=A0=E9=99=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Runtime/ABase/ObjectPool/ObjectPoolBase.cs | 3 +
.../ObjectPool/ObjectPoolService.Object.cs | 2 +-
.../ObjectPoolService.ObjectPool.cs | 88 ++++++-------------
Runtime/ABase/ObjectPool/ObjectPoolService.cs | 57 +++++-------
4 files changed, 54 insertions(+), 96 deletions(-)
diff --git a/Runtime/ABase/ObjectPool/ObjectPoolBase.cs b/Runtime/ABase/ObjectPool/ObjectPoolBase.cs
index 00df568..86df41f 100644
--- a/Runtime/ABase/ObjectPool/ObjectPoolBase.cs
+++ b/Runtime/ABase/ObjectPool/ObjectPoolBase.cs
@@ -1,4 +1,5 @@
using System;
+using System.Collections.Generic;
using AlicizaX;
namespace AlicizaX.ObjectPool
@@ -139,6 +140,8 @@ namespace AlicizaX.ObjectPool
/// 所有对象信息。
public abstract ObjectInfo[] GetAllObjectInfos();
+ public abstract void GetAllObjectInfos(List results);
+
internal abstract void Update(float elapseSeconds, float realElapseSeconds);
internal abstract void Shutdown();
diff --git a/Runtime/ABase/ObjectPool/ObjectPoolService.Object.cs b/Runtime/ABase/ObjectPool/ObjectPoolService.Object.cs
index 6ef9130..0c7edec 100644
--- a/Runtime/ABase/ObjectPool/ObjectPoolService.Object.cs
+++ b/Runtime/ABase/ObjectPool/ObjectPoolService.Object.cs
@@ -157,8 +157,8 @@ namespace AlicizaX.ObjectPool
///
public void Unspawn()
{
- m_Object.OnUnspawn();
m_Object.LastUseTime = DateTime.UtcNow;
+ m_Object.OnUnspawn();
m_SpawnCount--;
if (m_SpawnCount < 0)
{
diff --git a/Runtime/ABase/ObjectPool/ObjectPoolService.ObjectPool.cs b/Runtime/ABase/ObjectPool/ObjectPoolService.ObjectPool.cs
index ce1e227..40e60c8 100644
--- a/Runtime/ABase/ObjectPool/ObjectPoolService.ObjectPool.cs
+++ b/Runtime/ABase/ObjectPool/ObjectPoolService.ObjectPool.cs
@@ -14,10 +14,8 @@ namespace AlicizaX.ObjectPool
{
private readonly GameFrameworkMultiDictionary> m_Objects;
private readonly Dictionary