Der neue ASP.NET Core und EF Core sind ebenfalls bereit.
Sie können .NET 5.0 Preview 7 für Windows, MacOS und Linux herunterladen :
Sie müssen Visual Studio 2019 16.7 verwenden , um mit .NET 5.0 arbeiten zu können. .NET 5.0 wird jetzt von Visual Studio für Mac unterstützt . Installieren Sie die neueste C # -Erweiterung , um .NET 5.0 mit Visual Studio Code zu verwenden .
Lesen Sie mehr über Preview 7 unter dem Schnitt.
Performance
Stephen Taub hat kürzlich seinen Beitrag "Performance Improvements in .NET 5" veröffentlicht, den neuesten einer Reihe. Es umfasst ca. 250 leistungsorientierte Pull-Anforderungen, die Verbesserungen enthalten, die sogar Leute überraschen können, die die .NET Core-Leistung genau beobachten.
System.Text.Json
Wir haben der neuen JSON-API eine Usability-Funktion hinzugefügt. Die folgenden Funktionen sind in Vorschau 7 neu (in Vorschau 8 werden weitere Funktionen enthalten sein).
(GC)
Der GC bietet jetzt Details zur neuesten Sammlung über die GC.GetGCMemoryInfo- Methode , die eine GCMemoryInfo- Struktur zurückgibt . GCMemoryInfo bietet Informationen zum Computerspeicher, zum Heapspeicher und zur neuesten Sammlung oder zur neuesten Sammlung des von Ihnen angegebenen GC-Typs - kurzlebig, vollständig blockierend oder Hintergrund-GC.
Die wahrscheinlichsten Anwendungsfälle für diese neue API sind das Protokollieren / Überwachen oder das Anweisen des Bootloaders an den Load Balancer, dass ein Computer aus der Rotation genommen werden soll, um einen vollständigen GC anzufordern. Dies kann auch verwendet werden, um Einschränkungen für harte Container zu vermeiden, indem die Größe der Caches verringert wird.
RyuJIT
RyuJIT ist ein Assemblycode-Generator für .NET, der sowohl für Intel- als auch für ARM-Chips entwickelt wurde. Ein Großteil der Arbeit von RyuJIT konzentriert sich auf die Leistung.
- Wesentliche Verbesserungen
- Aktivieren Sie das Entfernen einiger Grenzprüfungen - Credit @ nathan-moore
- Optimieren Sie Enum.CompareTo nach dem Umschreiben in C # - die Leistung entspricht jetzt der vorherigen C ++ - Implementierung.
- Verbesserung der Registerzuordnung für Strukturen - Registrieren Sie multireg lclVars
- Verbesserungen zum Entfernen redundanter Null-Inits
- Verbesserung der Schwanzduplikation
- Stapelbasierte Strukturen kopieren CQ-Fix
- Bereinigen Sie eine Totfeldzuweisung, nachdem Sie redundante Nullinitialisierungen entfernt haben
- ARM64-Hardware-Intrinsics und API-Optimierung
- Implementieren Sie die Mehrheit der "nach Elementen" -Eigenschaften
- Implementieren Sie die Intrinsics fcvtxn, fcvtxn2, sqabs, sqneg, suqadd und usqadd - # 38010 , # 38110
- Optimieren Sie SpanHelpers.IndexOf (Byte), SpanHelpers.IndexOf (char)
- SpanHelpers.IndexOfAny optimieren (Byte)
- Optimieren Sie WithLower, WithUpper, Create, AsInt64, AsUInt64, AsDouble
- Optimieren Sie AsVector, AsVector128, GetUpper, As und WithElement
Fazit
Bitte teilen Sie uns Ihre Erfahrungen mit Preview 7 mit. Es ist noch nicht zu spät, Ihr Feedback zu teilen. Wir nähern uns der Veröffentlichung und achten jetzt mehr auf die Qualität, da wir die Entwicklung neuer Funktionen im Grunde abgeschlossen haben.