Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 3616|Antwoord: 2

[Bron] .NET/C# gebruikt Span om strings met hoge prestaties te verwerken

[Link kopiëren]
Geplaatst op 25-05-2023 20:13:18 | | | |
Vereisten: Onlangs,<T> kijkend naar kennis zoals Span en Memory<T>, vind ik dat er veel voordelen zijn aan het gebruik van zulke objecten, zoals: directe toegang tot geheugen (en zeer veilig), vermindering van onnodige geheugentoewijzing (afhankelijk van de scène, bijvoorbeeld Substring-interceptie van stringconversie), aanpassing van waarden in het geheugen, en toch leren, niet dat diepgaande begrip.

System.Span<T> is een nieuw waardetype in de .NET-core. Het ondersteunt een representatie van een aaneengesloten gebied van willekeurig geheugen, of dat geheugen nu gekoppeld is aan een beheerd object, geleverd door native code via interoperabiliteit, of zich in de stack bevindt. Dit doet het terwijl het toch veilige toegang biedt, met prestatiekenmerken vergelijkbaar met arrays. In gebruik zorgt Span voor geheugen- en databeveiliging met weinig tot geen overhead.

Als we bijvoorbeeld Substring gebruiken om een string om te zetten naar type int, guid, long, enz., gebruiken we de inhoud van de onderschepte string niet meer, maar het aanroepen van Substring om een nieuwe string terug te geven, zal nieuwe geheugenruimte aanvragen.

Eerst wordt de BenchmarkDotNet-benchmarktool geïntroduceerd, als volgt:

.NET/C# gebruikt BenchmarkDotNet om codeprestaties te testen
https://www.itsvse.com/thread-9576-1-1.html
De testcode is als volgt:

De resultaten zijn als volgt:



Referentie:

De hyperlink-login is zichtbaar.
De hyperlink-login is zichtbaar.





Vorig:.NET/C# syntax goto statement
Volgend:Docker bouwt online mindmaps gebaseerd op draw.io
Geplaatst op 26-05-2023 14:11:02 |
Kom en leer...
 Huisbaas| Geplaatst op 01-09-2023 21:59:03 |
Zo ja,.NET-frameworkkan worden verwezenSystem.Memory.dllGebruik ReadOnlySpan, AsSpan
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com