CrowRx.Pool
1.0.4
dotnet add package CrowRx.Pool --version 1.0.4
NuGet\Install-Package CrowRx.Pool -Version 1.0.4
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CrowRx.Pool" Version="1.0.4" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="CrowRx.Pool" Version="1.0.4" />
<PackageReference Include="CrowRx.Pool" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add CrowRx.Pool --version 1.0.4
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: CrowRx.Pool, 1.0.4"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package CrowRx.Pool@1.0.4
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=CrowRx.Pool&version=1.0.4
#tool nuget:?package=CrowRx.Pool&version=1.0.4
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
CrowRx.Pool
A high-performance pooling library for CrowRx, designed for Unity.
Features
- Generic Collection Pooling: Supports
List<T>,Dictionary<TKey, T>,HashSet<T>, andQueue<T>. - StringBuilder Pooling: Efficient
StringBuilderreuse to minimize GC allocations. - Disposable Pattern: Simple resource management using
usingblocks for automatic pool return. - Unity Optimized: Specifically designed for Unity 6.0+ environments.
Usage
Pooled Collections
All pooled collections inherit from their System.Collections.Generic counterparts and implement IDisposable.
using CrowRx.Pool.Collections;
// Using PooledList
using (var list = ListPool<int>.Get())
{
list.Add(1);
list.Add(2);
// Use the list...
} // Automatically cleared and returned to pool here
// Using PooledDictionary
using (var dict = DictionaryPool<string, int>.Get())
{
dict["key"] = 100;
}
// Using PooledHashSet
using (var set = HashSetPool<float>.Get())
{
set.Add(1.5f);
}
// Using PooledQueue
using (var queue = QueuePool<string>.Get())
{
queue.Enqueue("item");
}
StringBuilder Pool
Reduces memory pressure when performing frequent string operations.
using CrowRx.Pool.Text;
using (var pooled = StringBuilderPool.Get())
{
var sb = pooled.StringBuilder;
sb.Append("Hello ");
sb.Append("World!");
string result = sb.ToString();
UnityEngine.Debug.Log(result);
} // StringBuilder is cleared and returned to pool
Requirements
- Unity 6.0 or newer
- .NET Standard 2.1 compatible editor
Installation
Install via NuGet (NuGetForUnity supported).
Notes
This package is intended for use in Unity Editor only.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.1
- CrowRx.Core (>= 1.0.6)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CrowRx.Pool:
| Package | Downloads |
|---|---|
|
CrowRx.Json
A json library for CrowRx. This package is intended for use with Unity3D 6.0 or newer only. |
GitHub repositories
This package is not used by any popular GitHub repositories.