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

Pohľad: 3878|Odpoveď: 1

[Komunikácia] [Otoč]. NET 8 Novo pridané vysokovýkonné typy

[Kopírovať odkaz]
Zverejnené 7. 5. 2023 9:37:47 | | |
predhovor

. Net8 verzia, v porovnaní s. Net7 sa veľa zmenil. V tomto článku sa pozrime na niektoré z jeho typov zmien vo výkone, oficiálne odporúčané nové typy zamerané na zlepšenie výkonu aplikácií.

Wraparound

1.System.Collections.Frozen

Menné priestory zahŕňajú typy kolekcií FrozenDictionary< TKey, TValue> a FrozenSet. Po vytvorení kolekcie tieto typy neumožňujú žiadne zmeny kľúčov a hodnôt. Táto požiadavka umožňuje rýchlejšie čítanie (napr. TryGetValue()). Tieto typy sú obzvlášť užitočné pre kolekcie, ktoré sa pri prvom použití naplnia a potom uchovávajú na dlhodobú službu, ako napríklad:

2.System.Buffers.IndexOfAnyValues

Typ je určený na odovzdanie metóde, ktorá hľadá prvú zhodu akejkoľvek hodnoty v odovzdanej kolekcii. Napríklad String.IndexOfAny(Char[]) hľadá prvú zhodu akéhokoľvek znaku v špecifikovanom poli v reťazci, ktorý ho volá. NET 8 pridáva nové preťaženia metód, ako sú String.IndexOfAny a MemoryExtensions.IndexOfAny, ktoré akceptujú nové inštancie typov. Keď vytvoríte inštanciu System.Buffers.IndexOfAnyValues, všetky dáta potrebné na optimalizáciu následných vyhľadávaní budú odvodené v tom čase, čo znamená, že práca je vykonaná vopred.

3.System.Text.CompositeFormat

Typy môžu byť použité na optimalizáciu formátových reťazcov, ktoré sú pri kompilácii neznáme (napr. formátové reťazce sa načítavajú zo zdrojových súborov). Zaberie to trochu viac času na začiatku, napríklad na parsovanie reťazcov, ale ušetrí to prácu pri každom použití.

4.System.Buffers.IndexOfAnyValues

Typ je určený na odovzdanie metóde, ktorá hľadá prvú zhodu akejkoľvek hodnoty v odovzdanej kolekcii. Napríklad String.IndexOfAny(Char[]) hľadá prvú zhodu akéhokoľvek znaku v špecifikovanom poli v reťazci, ktorý ho volá. NET 8 pridáva nové preťaženia metód, ako sú String.IndexOfAny a MemoryExtensions.IndexOfAny, ktoré akceptujú nové inštancie typov. Keď vytvoríte inštanciu System.Buffers.IndexOfAnyValues, všetky dáta potrebné na optimalizáciu následných vyhľadávaní budú odvodené v tom čase, čo znamená, že práca je vykonaná vopred.

5.System.Text.CompositeFormat

Typy môžu byť použité na optimalizáciu formátových reťazcov, ktoré sú pri kompilácii neznáme (napr. formátové reťazce sa načítavajú zo zdrojových súborov). Zaberie to trochu viac času na začiatku, napríklad na parsovanie reťazcov, ale ušetrí to prácu pri každom použití.

6. System.Numerics a System.Runtime.Intrinsics

Vylepšenia menných priestorov System.Numerics a System.Runtime.Intrinsics. Vector256, Matrix3x2 a Matrix4x4 zlepšujú hardvérovú akceleráciu na .NET 8. Napríklad Vector256 znovu implementoval 2xVector128, kde to bolo možné. Hardvérové vnútornosti teraz anotujú pomocou vlastnosti ConstExpected. To zabezpečuje, že používatelia vedia, kedy základný hardvér potrebuje konštanty a kedy by mimoriadne hodnoty mohli neúmyselne poškodiť výkon.

Referencia:Prihlásenie na hypertextový odkaz je viditeľné.
Originál:Prihlásenie na hypertextový odkaz je viditeľné.





Predchádzajúci:VSTO (VI) zruší alebo zablokuje uloženie Word dokumentu
Budúci:ASP.NET Core (18) Prispôsobiť jednoduchú výstupnú cache OutputCache
Zverejnené 7. 5. 2023 15:36:17 |
Naučte sa učiť
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