Los nuevos ASP.NET Core y EF Core también están listos.
Puede descargar .NET 5.0 Preview 7 para Windows, macOS y Linux:
- Instaladores
- Imagenes
- Instalador instantáneo
- Notas de lanzamiento
- Problemas conocidos
- Rastreador de problemas en GitHub
Necesita usar Visual Studio 2019 16.7 para trabajar con .NET 5.0. .NET 5.0 ahora es compatible con Visual Studio para Mac . Instale la última extensión de C # para usar .NET 5.0 con Visual Studio Code .
Lea más sobre Preview 7 debajo del corte.
Actuación
Stephen Taub publicó recientemente su publicación "Mejoras de rendimiento en .NET 5", la última de una serie. Cubre ~ 250 solicitudes de extracción orientadas al rendimiento que contienen mejoras que incluso podrían sorprender a las personas que observan de cerca el rendimiento de .NET Core.
System.Text.Json
Agregamos una función de usabilidad a la nueva API JSON. Las siguientes funciones son nuevas en la Vista previa 7 (habrá más en la Vista previa 8).
(GC)
El GC ahora proporciona detalles de la colección más reciente a través del método GC.GetGCMemoryInfo , que devuelve una estructura GCMemoryInfo . GCMemoryInfo proporciona información sobre la memoria de la máquina, la memoria del montón y la colección más reciente, o la colección más reciente del tipo de GC que especifique: GC efímera, de bloqueo completo o de fondo.
Los casos de uso más probables para esta nueva API son para el registro / monitoreo, o para decirle al cargador de arranque al balanceador de carga que una máquina debe estar fuera de rotación para solicitar un GC completo. Esto también se puede utilizar para evitar las limitaciones de los contenedores reduciendo el tamaño de las cachés.
RyuJIT
RyuJIT es un generador de código de ensamblaje .NET diseñado para chips Intel y ARM. Gran parte del trabajo de RyuJIT se centra en el rendimiento.
- Mejoras importantes
- Habilitar la eliminación de algunas comprobaciones de límites - Credit @ nathan-moore
- Optimizar Enum.CompareTo después de ser reescrito en C # : el rendimiento ahora está a la par con la implementación anterior de C ++.
- Mejora en la asignación de registros para estructuras - Enregister multireg lclVars
- Mejoras para la eliminación de cero inits redundantes
- Mejora de la duplicación de la cola
- Arreglo de CQ de copia de estructuras basadas en pila
- Limpiar una asignación de campo muerto después de eliminar inicializaciones cero redundantes
- Optimización intrínseca de hardware y API ARM64
- Implementar la mayoría de elementos intrínsecos "por elemento"
- Implementar fcvtxn, fcvtxn2, sqabs, sqneg, suqadd, usqadd intrínsecos - # 38010 , # 38110
- Optimizar SpanHelpers.IndexOf (byte), SpanHelpers.IndexOf (char)
- Optimizar SpanHelpers.IndexOfAny (byte)
- Optimizar conLower, WithUpper, Create, AsInt64, AsUInt64, AsDouble
- Optimizar AsVector, AsVector128, GetUpper, As y WithElement
Conclusión
Cuéntenos su experiencia con la Vista previa 7. No es demasiado tarde para compartir sus comentarios. Nos estamos acercando al lanzamiento y ahora nos estamos enfocando más en la calidad, ya que básicamente hemos terminado de desarrollar nuevas funciones.