Követelmények: Mostanában, amikor olyan<T> tudást nézek, mint a Span és a Memória<T>, úgy érzem, sok előnye van az ilyen objektumok használatának, például: közvetlen hozzáférés a memóriához (és nagyon biztonságos), a felesleges memória leosztásának csökkentése (a helyszíntől függően, pl. String átalakítás alstring interception), az értékek módosítása a memóriában, és még tanulás, nem túl mélyreható megértés.
A System.Span<T> egy új értéktípus a .NET magban. Támogatja egy tetszőleges memória szomszédos régiójának ábrázolását, akár az adott memória egy kezelt objektumhoz kapcsolódik, akár natív kód által interop révén biztosított, akár a veremben van. Így is biztonságos hozzáférést biztosít, teljesítményjellemzői hasonlóak a tömbökhöz. Használat közben a Span minimális vagy semmilyen többletterheléssel biztosítja a memória- és adatbiztonságot.
Például, ha az Substring-et használjuk egy string átalakítására int, guid, long stb. típusra, akkor már nem használjuk az elfogott string tartalmát, de ha az Substring hívja az új string visszaküldését, új memóriateret kérünk.
Először bevezetik a BenchmarkDotNet benchmarking eszközt, az alábbiak szerint:
A tesztkód a következő:
Az eredmények a következők:
Utalás:
A hiperlink bejelentkezés látható.
A hiperlink bejelentkezés látható.
|