diff --git a/src/Ryujinx.Common/Pools/ObjectPool.cs b/src/Ryujinx.Common/Pools/ObjectPool.cs index ad56a04a2..de8534332 100644 --- a/src/Ryujinx.Common/Pools/ObjectPool.cs +++ b/src/Ryujinx.Common/Pools/ObjectPool.cs @@ -7,11 +7,11 @@ namespace Ryujinx.Common where T : class { private int _size = size; - private readonly ConcurrentStack _items = new(); + private readonly ConcurrentBag _items = new(); public T Allocate() { - bool success = _items.TryPop(out T instance); + bool success = _items.TryTake(out T instance); if (!success) { @@ -25,7 +25,7 @@ namespace Ryujinx.Common { if (_size < 0 || _items.Count < _size) { - _items.Push(obj); + _items.Add(obj); } }