Úvod do balíčku s vysokým výkonem
Obsahuje CommunityToolkit.HighPerformance
pomocné rutiny a rozšíření pro práci ve scénářích s vysokým výkonem. Tento balíček je možné nainstalovat prostřednictvím NuGetu a má následující cíle:
- .NET Standard 2.0
- .NET Standard 2.1
- .NET 6
- .NET 7
To znamená, že ho můžete používat od jakékoli aplikace pro UPW nebo starší verze .NET Framework, her napsaných v Unity, mobilních aplikací pro různé platformy pomocí Xamarinu až po knihovny .NET Standard a moderní aplikace .NET 6 a .NET 7. Povrch rozhraní API je téměř stejný ve všech případech a spousta práce byla vložena do backportingu co nejvíce funkcí do starších cílů, jako je .NET Standard 2.0. S výjimkou některých menších rozdílů můžete očekávat, že stejná rozhraní API budou k dispozici ve všech cílových architekturách. Důvodem, proč se cílení na více systémů používá, je umožnit balíčku využívat všechna nejnovější rozhraní API v moderních modulech runtime (jako je .NET 7), kdykoli je to možné, a přesto nabízet většinu jeho funkcí pro všechny cílové platformy.
Začínáme
Instalace balíčku ze sady Visual Studio:
V Průzkumník řešení klikněte pravým tlačítkem na projekt a vyberte Spravovat balíčky NuGet. Vyhledejte CommunityToolkit.HighPerformance a nainstalujte ho.
Přidejte direktivu using nebo Imports pro použití nových rozhraní API:
using CommunityToolkit.HighPerformance;
Imports CommunityToolkit.HighPerformance
Ukázky kódu jsou k dispozici na dalších stránkách dokumentace pro MVVM Toolkit a v testech jednotek projektu.
Kdy mám tento balíček použít?
Jak název napovídá, balíček s vysokým výkonem obsahuje sadu rozhraní API, která se silně zaměřují na optimalizaci. Všechna nová rozhraní API byla pečlivě sestavena tak, aby při jejich použití dosáhla nejlepšího možného výkonu, a to buď prostřednictvím omezeného přidělení paměti, mikro optimalizace na úrovni sestavení, nebo strukturováním rozhraní API způsobem, který obecně usnadňuje psaní kódu orientovaného na výkon.
Tento balíček využívá velká množství rozhraní API, jako jsou:
System.Span<T>
System.Memory<T>
System.Buffers.ArrayPool<T>
System.Runtime.CompilerServices.Unsafe
System.Runtime.InteropServices.MemoryMarshal
System.Threading.Tasks.Parallel
Pokud už tato rozhraní API znáte, nebo i když teprve začínáte psát kód s vysokým výkonem v jazyce C# a chcete, aby sada dobře otestovaných pomocných rutin používala ve vlastních projektech, podívejte se, co je součástí tohoto balíčku, abyste zjistili, jak ho můžete používat ve vlastních projektech.
Kde začít?
Tady jsou některá rozhraní API, na která byste se mohli podívat jako první, pokud jste už používali jeden z těchto typů uvedených výše:
Span2D<T>
aMemory2D<T>
, proSpan<T>
abstrakci aMemory<T>
-like nad 2D pamětíMemoryOwner<T>
aSpanOwner<T>
, pokud jste používaliSystem.Buffers.ArrayPool<T>
.StringPool
– pro typArrayPool<T>
like pro ukládání instancí do mezipamětistring
ParallelHelper
, pokud jste používaliSystem.Threading.Tasks.Parallel
.
Další materiály
.NET Community Toolkit