Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 3878|Répondre: 1

[Communication] [Tourne]. NET 8 : Nouveaux types de hautes performances

[Copié le lien]
Publié sur 07/05/2023 09:37:47 | | |
préface

. Version Net8, comparée à. Net7 a beaucoup changé. Dans cet article, examinons certains de ses types de changements de performance, les nouveaux types officiellement recommandés visant à améliorer les performances des applications.

Enveloppant

1. Système.Collections.Frozen

Les espaces de noms incluent les types de collections FrozenDictionary< TKey, TValue> et FrozenSet. Une fois une collection créée, ces types n’autorisent aucune modification des clés et des valeurs. Cette exigence permet des opérations de lecture plus rapides (par exemple, TryGetValue()). Ces types sont particulièrement utiles pour les collections qui sont peuplées au départ puis conservées pour un service à long terme, telles que :

2. System.Buffers.IndexOfAnyValues

Le type est destiné à être transmis à la méthode de recherche de la première correspondance de valeur quelconque dans la collection passée. Par exemple, String.IndexOfAny(Char[]) recherche la première correspondance de n’importe quel caractère dans le tableau spécifié de la chaîne qui l’appelle. NET 8 ajoute de nouvelles surcharges de méthodes, telles que String.IndexOfAny et MemoryExtensions.IndexOfAny qui acceptent de nouvelles instances de type. Lorsque vous créez une instance de System.Buffers.IndexOfAnyValues, toutes les données nécessaires pour optimiser les recherches ultérieures seront dérivées à ce moment-là, ce qui signifie que le travail est effectué au départ.

3. System.Text.CompositeFormat

Les types peuvent être utilisés pour optimiser des chaînes de formats inconnues au moment de la compilation (par exemple, les chaînes de format sont chargées à partir de fichiers ressources). Cela prend un peu plus de temps au départ pour faire des choses comme analyser les chaînes, mais cela évite le travail à chaque utilisation.

4. System.Buffers.IndexOfAnyValues

Le type est destiné à être transmis à la méthode de recherche de la première correspondance de valeur quelconque dans la collection passée. Par exemple, String.IndexOfAny(Char[]) recherche la première correspondance de n’importe quel caractère dans le tableau spécifié de la chaîne qui l’appelle. NET 8 ajoute de nouvelles surcharges de méthodes, telles que String.IndexOfAny et MemoryExtensions.IndexOfAny qui acceptent de nouvelles instances de type. Lorsque vous créez une instance de System.Buffers.IndexOfAnyValues, toutes les données nécessaires pour optimiser les recherches ultérieures seront dérivées à ce moment-là, ce qui signifie que le travail est effectué au départ.

5.System.Text.CompositeFormat

Les types peuvent être utilisés pour optimiser des chaînes de formats inconnues au moment de la compilation (par exemple, les chaînes de format sont chargées à partir de fichiers ressources). Cela prend un peu plus de temps au départ pour faire des choses comme analyser les chaînes, mais cela évite le travail à chaque utilisation.

6. System.Numerics et System.Runtime.Intrinsics

Améliorations des espaces de noms System.Numerics et System.Runtime.Intrinsics. Vector256, Matrix3x2 et Matrix4x4 améliorent l’accélération matérielle sur .NET 8. Par exemple, Vector256 a réimplémenté 2xVector128 lorsque c’était possible. Les composants internes matériels annotent désormais en utilisant la propriété ConstExpected. Cela garantit que les utilisateurs savent quand le matériel sous-jacent a besoin de constantes et quand des valeurs extraordinaires peuvent accidentellement nuire aux performances.

Référence:La connexion hyperlientérée est visible.
Langue source:La connexion hyperlientérée est visible.





Précédent:VSTO (VI) annule ou bloque la sauvegarde du document Word
Prochain:ASP.NET Core (18) Personnaliser un cache de sortie OutputCache simple
Publié sur 07/05/2023 15:36:17 |
Apprendre à apprendre
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com