Steelax.Toolkit.HighPerformance
0.1.0
See the version list below for details.
dotnet add package Steelax.Toolkit.HighPerformance --version 0.1.0
NuGet\Install-Package Steelax.Toolkit.HighPerformance -Version 0.1.0
<PackageReference Include="Steelax.Toolkit.HighPerformance" Version="0.1.0" />
<PackageVersion Include="Steelax.Toolkit.HighPerformance" Version="0.1.0" />
<PackageReference Include="Steelax.Toolkit.HighPerformance" />
paket add Steelax.Toolkit.HighPerformance --version 0.1.0
#r "nuget: Steelax.Toolkit.HighPerformance, 0.1.0"
#:package Steelax.Toolkit.HighPerformance@0.1.0
#addin nuget:?package=Steelax.Toolkit.HighPerformance&version=0.1.0
#tool nuget:?package=Steelax.Toolkit.HighPerformance&version=0.1.0
Steelax.Toolkit.HighPerformance
Steelax.Toolkit.HighPerformance — a collection of high-performance primitives for building non-blocking, signal-driven async pipelines:
- lock-free / lightweight concurrency — fan-in signaling, event-driven task/enumerator wrappers, task-slot sets;
- low-allocation data structures — fixed-capacity ring buffer and bitmask-based slot sets.
The library is the foundation for the Steelax.Pufflow dataflow pipelines, but every primitive is a standalone public API.
📦 Installation
dotnet add package Steelax.Toolkit.HighPerformance
📚 Documentation
Data Structures
| Type | Namespace | Docs |
|---|---|---|
RingBuffer<T> |
Steelax.Toolkit.HighPerformance.Primitives |
📄 RingBuffer |
SlotSet |
Steelax.Toolkit.HighPerformance.Primitives |
📄 SlotSet |
Concurrency Primitives
| Type | Namespace | Docs |
|---|---|---|
EventQueue<T> |
...Concurrency |
📄 EventQueue |
FanInSlim |
...Concurrency.Primitives |
📄 FanInSlim |
FanInSignalCallback |
...Concurrency.Primitives |
📄 FanInSignalCallback |
BitTaskAny |
...Concurrency.Primitives |
📄 BitTaskAny |
EventTask<T> / EventTask |
...Concurrency.Primitives |
📄 EventTask |
EventEnumerator<T> |
...Concurrency.Primitives |
📄 EventEnumerator |
Helpers & Supporting Types
| Type | Namespace | Docs |
|---|---|---|
AsyncMarshal |
Steelax.Toolkit.HighPerformance |
📄 AsyncMarshal |
EventEnumeratorState / EventTaskState |
...Concurrency.Primitives |
📄 Result States |
🔗 Related
📋 Requirements
- .NET 10.0+
- C# 13+
🛠️ Build & Test
dotnet restore
dotnet build --configuration Release
dotnet test
The repository is a multi-project solution:
| Project | Path | Purpose |
|---|---|---|
| Library | src/Steelax.Toolkit.HighPerformance |
The package source |
| Tests | tests/Steelax.Toolkit.HighPerformance.Tests |
xUnit v3 unit tests |
| Exploration | tests/Steelax.Toolkit.HighPerformance.Exploration |
Behavior exploration of async enumerators / ValueTask |
| Benchmarks | benchmarks/Steelax.Toolkit.HighPerformance.Benchmarks |
BenchmarkDotNet benchmarks (dotnet run -c Release) |
NuGet package versions are managed centrally via Directory.Packages.props; shared build metadata (authors, license, SourceLink) lives in Directory.Build.props.
🚀 CI / Release
The main.yml workflow builds, runs tests, packs, and — on v* tags — publishes the package to NuGet. Versioning is driven by GitVersion (GitHubFlow, continuous deployment).
📄 License
Licensed under the MIT License.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- JetBrains.Annotations (>= 2026.2.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Steelax.Toolkit.HighPerformance:
| Package | Downloads |
|---|---|
|
Steelax.Pufflow
A library for building dataflow pipelines based on Poll and Push models and their combinations. |
|
|
Steelax.Pufflow.Operators
Operators (Buffer, Chunk, Timeout, Warm, ...) for Steelax.Pufflow dataflow pipelines. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Initial pre-release.