Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 3616|Odpoveď: 2

[Zdroj] .NET/C# používa Span na spracovanie reťazcov s vysokým výkonom

[Kopírovať odkaz]
Zverejnené 25. 5. 2023 20:13:18 | | | |
Požiadavky: V poslednej dobe, keď sa pozerám na znalosti<T> ako Span a Memory<T>, mám pocit, že používanie takýchto objektov prináša mnoho výhod, napríklad: priamy prístup k pamäti (a veľmi bezpečné), zníženie zbytočného prideľovania pamäte (v závislosti od scény, napr. zachytávanie podreťazcov pri konverzii reťazcov), úprava hodnôt v pamäti a stále učenie, nie hĺbkové pochopenie.

System.Span<T> je nový typ hodnoty v jadre .NET. Podporuje reprezentáciu súvislej oblasti ľubovoľnej pamäte, či už je táto pamäť priradená k spravovanému objektu, poskytovaná natívnym kódom cez interoperáciu, alebo je v zásobníku. Robí to tak, pričom stále poskytuje bezpečný prístup, s výkonnostnými charakteristikami podobnými poľom. Pri používaní Span zabezpečuje bezpečnosť pamäte a dát s minimálnymi alebo žiadnymi režijnými nákladmi.

Napríklad, ak použijeme Substring na konverziu reťazca na typ int, guid, long a pod., už nebudeme používať obsah zachyteného reťazca, ale zavolanie Substringu na vrátenie nového reťazca vyžiada nový pamäťový priestor.

Najprv je predstavený nástroj na benchmarkovanie BenchmarkDotNet, nasledovne:

.NET/C# používa BenchmarkDotNet na testovanie výkonu kódu
https://www.itsvse.com/thread-9576-1-1.html
Testovací kód je nasledovný:

Výsledky sú nasledovné:



Referencia:

Prihlásenie na hypertextový odkaz je viditeľné.
Prihlásenie na hypertextový odkaz je viditeľné.





Predchádzajúci:.NET/C# syntax goto príkaz
Budúci:Docker vytvára online myšlienkové mapy na základe draw.io
Zverejnené 26. 5. 2023 14:11:02 |
Poďte sa učiť...
 Prenajímateľ| Zverejnené 1. 9. 2023 21:59:03 |
Ak áno.NET frameworkmožno citovaťSystem.Memory.dllPoužite ReadOnlySpan, AsSpan
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com