Avec ce dernier aperçu, runtime-async — l’implémentation intégrée du runtime de async/await – continue de combler l’écart avec le modèle de machine à états généré par le compilateur, selon Microsoft. Les versions asynchrones des méthodes sont désormais compilées via le pipeline de compilation à plusieurs niveaux. Les méthodes asynchrones contournaient auparavant la hiérarchisation et exécutaient toujours le code de niveau 0, qui était optimisé pour la vitesse de compilation plutôt que pour un débit stable.
Du côté de WebAssembly, .NET 11 apporte CoreCLR à WebAssembly avec un modèle interpréteur portable plus R2R (ReadyToRun) qui réutilise RyuJIT pour la génération de code à l’avance. Cette configuration pouvait démarrer dans l’aperçu 6 et exécute désormais la suite de tests des bibliothèques CoreCLR de bout en bout dans l’aperçu 7.
L’aperçu 7 apporte également des mises à jour du langage C# et du compilateur, notamment break et continue. Avec C#15, break et continue peut nommer une boucle englobante ou switchpermettant aux développeurs de quitter ou de continuer une construction externe directement à partir d’une construction interne sans passer par un indicateur ni recourir à goto. Également avec C# 15, les types d’union utilisent le Try-Both approche d’appariement. Lorsqu’un modèle est appliqué à une valeur d’union, le compilateur teste d’abord le modèle par rapport à l’instance d’union elle-même ; si ce test échoue, il teste le modèle par rapport au contenu de l’union Value.
