【译】Visual Studio 2022 - 17.8 的性能改进
Visual Studio 2022 17.8版本欢迎一系列令人振奋的性能增强,包括响应式文件打开体验,改进 Razor/Blazor 的响应性,加速 F5,优化的 C++ 虚幻引擎智能感知和非 SDK 风格 .NET 项目的构建加速。这些变化的核心是我们对提高性能的承诺,为编码体验提供一个理想的平台,不仅无缝而且高效。拥抱这些改进,以实现更高效的编码之旅。准备好迎接激动人心的体验吧!
响应式文件打开体验
我们引入了异步文件打开,以增强在 Visual Studio 中处理大文件时的响应能力。这一改进允许UI在加载文件内容期间保持响应。通过异步文件加载,您可以在打开解决方案后更快地与 Visual Studio 进行交互。我们的实验显示了交互性的显著改善,打开包含大型文件的解决方案的响应速度提高了10%。这个特性目前在 SDK 风格的 .NET 项目中是激活的,我们正在积极地努力在未来的更新中将这个改进扩展到所有的项目类型。
以前

现在

改进 Razor/Blazor 的响应性
使用 Razor 和 Blazor 的解决方案将体验到更好的响应。我们通过在 Visual Studio 和 Roslyn 之间的跨进程通信期间显著减少内存分配来实现这一目标。我们测试了 OrchardCore 解决方案,结果令人印象深刻。为了打开解决方案并准备好 Razor 智能感知,我们分配了大约 1.4GB 的内存。更少的堆分配意味着垃圾收集器的工作更少,从而提高了响应性。
加速 F5
通过优化断点的设置,我们大大增强了本地项目的 F5 性能。任何给定项目所看到的改进取决于带有断点的文件的数量、带有符号的 dll 的数量等。此外,我们还优化了 Windows 应用程序的 PDB 加载过程,减少了定位 PDB 后加载所需的时间。在我们的测试中,这些优化为虚幻编辑器项目提供了20%的显著速度提升。

优化的 C++ 虚幻引擎智能感知
我们改进了在打开先前打开的 C++ 文件后智能感知和着色的速度。我们总是为打开的文件缓存智能感知状态。在17.8中,我们重构了从缓存读取的操作,以便首先计算最关键的信息,包括所选引用的着色和高亮显示。这种优化可以帮助您提高工作效率。

非 SDK 风格 .NET 项目的构建加速
Visual Studio 17.8将构建加速扩展到针对非 SDK 风格项目(例如针对 .NET Framework 4.8 或更低版本的项目)的托管应用程序,从而对构建时间产生重大影响。若要启用,请按如下方式设置 msbuild 项目属性:
<Project>
<PropertyGroup>
<AccelerateBuildsInVisualStudio>true</AccelerateBuildsInVisualStudio>
</PropertyGroup>
</Project>
这建立在17.5中为 SDK 风格的项目成功引入的基础上,显著减少了增量构建时间。
在我们使用内部解决方案进行的内部测试中,我们注意到增量构建时间达到了50%的改善。然而,实际的改进取决于构建开始时项目的状态。具体来说,与解决方案中的全部项目相比,修改的项目越少,改进就越大。您所经历的实际改进程度将取决于您的项目及其修改的具体情况。
我们重视您的意见!
我们相信这些性能增强将显著改善您的开发体验,使其更加高效和愉快。您的反馈对于帮助我们改进产品并满足您的期望至关重要。我们鼓励您通过开发者社区向我们提供反馈:通过 Report-a-Problem 报告任何 bug 或问题,并分享您的建议。或者,请在下面留下您的评论。我们感谢您的反馈,并期待着根据您宝贵的见解来不断改进 Visual Studio 的用户体验。
原文链接:https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-8-performance-enhancements/

【译】Visual Studio 2022 - 17.8 的性能改进的更多相关文章
- .NET 6.0.6 和 .NET Core 3.1.26、Visual Studio 2022 17.2 和 17.3 Preview 2 和 .NET 7.0 Preview 5 同时发布
Microsoft 昨天发布了适用于 .NET 6.0.6 和 .NET Core 3.1.26.NuGet.Visual Studio 2019 和 Visual Studio 2022 17.2 ...
- Visual Studio 2022 Preview 1 和.NET 6 Preview 5 正式发布
具有里程碑意义的Visual Studio 2022 Preview 1正式发布,重点是64位,而没有增加新功能,并且同时也发布了.NET 6 Preview 5. https://devblogs. ...
- [翻译]正式宣布 Visual Studio 2022
原文: [Visual Studio 2022] 首先,我们要感谢正在阅读这篇文章的你,我们所有的产品开发都始于你也止于你,无论你是在开发者社区上发帖,还是填写了调查问卷,还是向我们发送了反馈意见,或 ...
- .NET6系列:微软正式宣布Visual Studio 2022
系列目录 [已更新最新开发文章,点击查看详细] 首先,我们要感谢正在阅读这篇文章的你,我们所有的产品开发都始于你也止于你,无论你是在开发者社区上发帖,还是填写了调查问卷,还是向我们发送了反馈意 ...
- .NET6系列:Visual Studio 2022 线路图
系列目录 [已更新最新开发文章,点击查看详细] 在上一篇博客<Visual Studio 2022>中介绍了VS2022的性能改进与重要功能.本文主要介绍在 Visual Stud ...
- 微软发布了Visual Studio 2022 Preview 1 以及.NET 6 Preview 5
Microsoft 今天宣布了Visual Studio 2022 的第一个预览版,并且同时也发布了.NET 6 Preview 5. https://devblogs.microsoft.com/v ...
- C++ 与 Visual Studio 2022 和 WSL(五)——WSL2
Build and Debug C++ with WSL 2 Distributions and Visual Studio 2022 References Build and Debug C++ w ...
- 地表最强IDE ——Visual Studio 2022正式发布
地表最强IDE--Visual Studio 2022昨天正式发布啦! 堪称宇宙第一IDE工具集的Visual Studio,在经过不断更新优化之后,新版本就要与大家见面了.本次新版本发布,有许多令人 ...
- Visual Studio 2022 初探 (vs2022附激活码)
前言 Visual Studio 2022 正式版来了.新版本带有 go-live 许可证,可供生产使用.在 Visual Studio 2019 的基础上,新版集成开发坏境提供了非常多的改进,包括对 ...
- Visual Studio 2022 git error Unable to negotiate with xx.xxx.xxxx port 22: no matching host key type found. Their offer: ssh-rsa
前言 前两天因为升级了Git导致git提交拉取的时候都提示下面这个异常,然后经过一番折腾以后终于把这个问题解决了.但是今天我升级了下Visual Studio 2022将其升级到了17.1.3版本然后 ...
随机推荐
- Hi3798MV200 恩兔N2 NS-1 (二): HiNAS海纳思使用和修改
目录 Hi3798MV200 恩兔N2 NS-1 (一): 设备介绍和刷机说明 Hi3798MV200 恩兔N2 NS-1 (二): HiNAS海纳思使用和修改 Hi3798MV200 恩兔N2 NS ...
- DELPHI应用EXCEL(1)
在介绍使用delphi控制excel之前前,我们首先需要了解关于EXCEL的几个基本概念:EXCEL应用程序.工作薄(book).工作表(sheet)以及单元格(CELLS): 首先,我们是打开exc ...
- openssh傻瓜式一键自动化更新脚本(ubuntu系统)
鉴于openssh升级太过麻烦,这里自制了一个openssh自动化升级脚本,以root权限一键运行脚本即可: sh openssh-update.sh 注意:这里只使用于ubuntu系统,centos ...
- 4.2 C++ Boost 内存池管理库
Boost 库是一个由C/C++语言的开发者创建并更新维护的开源类库,其提供了许多功能强大的程序库和工具,用于开发高质量.可移植.高效的C应用程序.Boost库可以作为标准C库的后备,通常被称为准标准 ...
- Flutter系列文章-Flutter在实际业务中的应用
不同场景下的解决方案 1. 跨平台开发: 在移动应用开发中,面对不同的平台(iOS和Android),我们通常需要编写两套不同的代码.而Flutter通过一套代码可以构建适用于多个平台的应用,大大提高 ...
- 青语言V1.0正式发布
大家好,距离6月1日青语言发布第一个版本已经过去了三个月,而今我们按计划发布青语言的1.0版本. 青语言主页:https://qingyuyan.cn V1发布宣传视频:https://www.bil ...
- windows无法连接VMware虚拟机的linux
遇到的问题:今天使用xshell连接虚拟机,无法连接. 解决过程: 1.测试ping, linux虚拟机能ping通windows主机,可是windows主机ping不通linux虚拟机. 2.查看v ...
- 如何解决IOS 15提示“此App的开发者需要更新APP以在此IOS版本上正常工作”, 无法打开安装的APP的问题
在苹果手机最新的IOS 15 beta的系统上安装自签名或者企业签名的APP时,可能会遇到如下的错误提示: 此App的开发者需要更新APP以在此IOS版本上正常工作 The developer of ...
- 【krpano】KRPano打开黑屏: FATAL ERROR
在KRPano开发过程中,初学者打开项目经常遇到如下的问题: FATAL ERROR:tour.xml – loading failed! (0) 或者是: ERROR:Local usage wit ...
- div 让a内容居中方法
<div>标签是HTML中的一个重要标签,它代表了一个文档中的一个分割区块或一个部分.在<div>标签中,我们可以放置各种内容,包括文本.图像.链接等等.有时候,我们需要将其中 ...