Files
XCharts/Runtime/Internal/Pools/ListPool.cs

35 lines
759 B
C#
Raw Normal View History

using System.Collections.Generic;
2022-02-19 22:37:57 +08:00
namespace XCharts.Runtime
{
internal static class ListPool<T>
{
private static readonly ObjectPool<List<T>> s_ListPool = new ObjectPool<List<T>>(OnGet, OnClear);
static void OnGet(List<T> l)
{
if (l.Capacity < 50)
{
l.Capacity = 50;
}
}
static void OnClear(List<T> l)
{
l.Clear();
}
public static List<T> Get()
{
return s_ListPool.Get();
}
public static void Release(List<T> toRelease)
{
s_ListPool.Release(toRelease);
}
public static void ClearAll()
{
s_ListPool.ClearAll();
}
}
2022-05-22 22:17:38 +08:00
}