Fes*_*ale 6 compilation build freeze visual-studio-2019
环境
我在 Windows 10 虚拟机上使用 Visual Studio 2019 版本 16.7.2,该虚拟机由 Parallels 在全新 MacBook Pro 上托管。该 VM 有 8 个虚拟处理器和 16 GB RAM。
VM 上仅安装 Visual Studio 之外的任何其他内容。
我正在尝试做什么
我正在尝试编译一个由 17 个项目组成的 Visual Studio 解决方案。这些项目相对较小。它们都是面向 .NET Core 3.1 的 C# 控制台应用程序或 DLL 库。
问题
通常,在清洁解决方案发生后大约十秒内执行重建解决方案。我全天执行的典型构建解决方案 (Ctl-Shft-B) 几乎是即时发生的。
但有时,在五次构建中,构建解决方案/项目会导致 VBCSCompiler.exe 消耗 99% 的 CPU 使用率,并在执行构建之前冻结大约三十到四十五秒。一旦开始执行构建,一切都会正常完成。这种一次又一次发生的长时间延迟让我的开发周期非常令人沮丧。我想找到一种方法来消除这种延迟。
发生了什么变化
该构建在我的 Amazon Web Server Windows 2016 m4.xlarge VM 上执行良好。为了省钱,我最近改用了 Parallels VM。那就是问题开始的时候。
我想再次重申,Parallels VM 是干净的。那里除了 Visual Studio 之外没有安装其他任何东西。
我尝试过的
采用了以下策略,但没有效果。
(1) 我关闭了Defender实时病毒检查器。
(2)根据这篇文章中的信息,我去了工具| 选项| Nuget 包管理器 | 常规,未选中“允许 Nuget 下载丢失的软件包”和“自动检查丢失的软件包”
(3) 在工具| 选项| 项目和解决方案| 构建并运行,我将并行项目构建的最大数量设置为 1。
(4) 根据对不相关问题的回答,我了解到可以通过将“MS Build 项目构建输出详细程度”设置为“详细”来查看有关构建过程的更多信息。我就这么做了。我等待冻结发生,以便可以在冻结之前检查最后一行输出。内容如下:
Using shared compilation with compiler from directory: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Roslyn
Run Code Online (Sandbox Code Playgroud)
该行始终出现在冻结之前。
(5) 根据上面的输出,我在 Google 上搜索“共享编译”并发现了这篇文章。
作为一名业余程序员,那里进行的讨论以及接受的答案中的链接远远高于我的薪资等级。这对我来说是难以理解的。如果答案在那篇文章中,我无法破译它。
关于如何解决这种间歇性冻结的任何想法?如果我无法弄清楚,我将不得不假设是我的 Parallels Windows 10 VM 引起了问题,然后恢复在 Amazon 服务器上进行开发。如果可能的话,我宁愿避免这种情况,因为会增加费用。
感谢您的考虑。
最好的,
费斯图斯
| 归档时间: |
|
| 查看次数: |
1845 次 |
| 最近记录: |