1. 前言

微软发布了 .NET 5.0 Preview 7。它是预览版本中的倒数第二个(在迁移到 RC 之前)。大多数功能此时应该非常接近完成。单个文件和 ARM64 内在函数是两个需要最长时间才能完成的功能区域,但在 Preview 8 中正处于轨道上。请参阅.NET 5.0 Preview 4以获得更广泛的版本视图。

您需要使用Visual Studio 2019 16.7才能使用 .NET 5.0。Visual Studio for Mac现在支持 .NET 5.0 。安装最新版本的C# 扩展以将 .NET 5.0 与Visual Studio Code 结合使用。

2. 性能提升

Stephen Toub最近发布了.NET 5 中的性能改进。他涵盖了大约 250 个面向性能的拉取请求,其中揭示了一些改进,甚至会让密切关注 .NET Core 性能的人感到惊讶。

3. System.Text.Json

我们一直在向新的 JSON API 添加可用性功能。以下功能是预览版 7 中的新功能(预览版 8 中还有更多功能)。

4. 垃圾回收 (GC)

GC 现在通过GC.GetGCMemoryInfo方法公开最近收集的详细信息,该方法返回GCMemoryInfo结构。GCMemoryInfo 提供有关机器内存、堆内存和最近收集的信息,或您指定的 GC 类型的最近收集 - 临时、完全阻塞或后台 GC。

使用这个新 API 最有可能的用例是记录/监控或向加载器平衡器指示一台机器应该停止旋转以请求完整的 GC。它还可以通过减少缓存的大小来避免容器硬限制。

另一个小而有影响的更改是将昂贵的reset memory操作推迟到低内存情况。我们预计这些政策变化会降低 GC 延迟(以及一般的 GC CPU 使用率)。