Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 3616|Svare: 2

[Kilde] .NET/C# bruker Span for å håndtere strenger med høy ytelse

[Kopier lenke]
Publisert på 25.05.2023 20:13:18 | | | |
Krav: Nylig, etter å ha sett på kunnskap<T> som Span og Memory<T>, føler jeg at det er mange fordeler med å bruke slike objekter, som: direkte tilgang til minnet (og svært sikkert), reduksjon av unødvendig minneallokering (avhengig av scenen, f.eks. substring-interception av strengkonvertering), modifisering av verdier i minnet, og fortsatt læring, ikke den dype forståelsen.

System.Span<T> er en ny verditype i .NET-kjernen. Den støtter en representasjon av et sammenhengende område med vilkårlig minne, enten dette minnet er tilknyttet et administrert objekt, levert av native kode via interop, eller befinner seg i stakken. Det gjør dette samtidig som den gir sikker tilgang, med ytelsesegenskaper som ligner arrays. I bruk sikrer Span minne- og datasikkerhet med liten eller ingen overhead.

For eksempel, hvis vi bruker Substring for å konvertere en streng til typene int, guid, long osv., vil vi ikke lenger bruke innholdet i den avlyttede strengen, men å kalle Substring for å returnere en ny streng vil be om ny minneplass.

Først introduseres Benchmarking-verktøyet BenchmarkDotNet, som følger:

.NET/C# bruker BenchmarkDotNet for å teste kodeytelse
https://www.itsvse.com/thread-9576-1-1.html
Testkoden er som følger:

Resultatene er som følger:



Referanse:

Innloggingen med hyperkoblingen er synlig.
Innloggingen med hyperkoblingen er synlig.





Foregående:.NET/C# syntaks goto-setning
Neste:Docker lager online tankekart basert på draw.io
Publisert på 26.05.2023 14:11:02 |
Kom og lær...
 Vert| Publisert på 01.09.2023 21:59:03 |
Hvis ja,.NET-rammeverketkan refereresSystem.Memory.dllBruk ReadOnlySpan, AsSpan
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com