Zahteve: V zadnjem času, ko gledam znanja<T>, kot sta Span in Memory<T>, menim, da je veliko prednosti uporabe takšnih objektov, kot so: neposreden dostop do pomnilnika (in zelo varen), zmanjšanje nepotrebne dodelitve pomnilnika (odvisno od prizora, npr. prestrezanje podnizov pri pretvorbi nizov), spreminjanje vrednosti v pomnilniku in še vedno učenje, ne pa tako poglobljeno razumevanje.
System.Span<T> je nova vrsta vrednosti v .NET jedru. Podpira predstavitev neprekinjenega območja poljubnega pomnilnika, ne glede na to, ali je ta pomnilnik povezan z upravljanim objektom, ga zagotavlja izvorna koda prek interoperabilnosti ali je v skladu. To počne, hkrati pa zagotavlja varen dostop, z zmogljivostnimi značilnostmi, podobnimi poljem. V uporabi Span zagotavlja varnost pomnilnika in podatkov z malo ali brez obremenitve.
Na primer, če uporabimo Substring za pretvorbo niza v int, guid, long itd., ne bomo več uporabljali prestrežene vsebine niza, vendar bo klic Substring za vrnitev novega niza zahteval nov pomnilniški prostor.
Najprej je predstavljeno orodje za primerjavo BenchmarkDotNet, in sicer:
Testna koda je naslednja:
Rezultati so naslednji:
Referenčni:
Prijava do hiperpovezave je vidna.
Prijava do hiperpovezave je vidna.
|