【问题标题】:Checking for any code updates Visual Studio 2019 and 2022检查任何代码更新 Visual Studio 2019 和 2022
【发布时间】:2021-12-14 04:27:11
【问题描述】:

有时(经常)我在调试期间收到消息Checking for any code updates

这会降低生产力。我做了一些研究,在 Visual Studio 社区找到了一个帖子:https://developercommunity.visualstudio.com/t/visual-studio-gets-stuck-looking-for-code-changes/1521675?viewtype=solutions

但帖子已以Not Enough Info 关闭。似乎发布该内容的人不知道如何重现此内容。跟我一样的情况。我不知道为什么会这样。 有人有这个问题吗?如何解决这个问题?它发生在 VS 2019 和 2022 年

【问题讨论】:

    标签: visual-studio visual-studio-2019 visual-studio-2022


    【解决方案1】:

    我也遇到过类似的问题,遇到断点后继续会不断弹出并极大地延迟调试会话...

    经过数小时试图解决这个问题,我想我可能已经找到了解决方案。我不确定您的设置如何,但是当我开始在 Visual Studio 2022 上使用具有以下设置的 .NET 6 时,这似乎开始发生在我身上:

    当我关闭它们然后重新启动 Visual Studio 时,调试会话变得更快(并且该弹出窗口仅在该调试会话中第一次命中断点时出现一次,并且 很短的时间;然后,它没有显示)。所以你可以试一试。

    但是,如果您在关闭这些设置后仍然遇到此问题,您可能需要在工具 -> 选项 -> 调试 -> .NET/C++ 热重载中关闭此设置:

    我知道转向这个特定的可能并不理想(因为任何 .NET 的热重载都非常有用且很酷),但如果您的工作效率因此而受到拖累,那么我会建议这样做。

    请注意,我目前正在使用带有 .NET 6 的 Visual Studio 2022。

    更新(2022 年 2 月 18 日): 似乎 Visual Studio 17.1.0 的更新解决了这个问题。我升级到 17.1.0 后没有看到这个弹出窗口。

    更新(2022 年 2 月 25 日): 使用 VS 17.1.0 一周后,注意到此问题仍然存在Tools -> Options -> Environment -> Preview Features 在 Visual Studio 检查代码更改或使此Checking for any code updates 弹出窗口不显示时大大降低了加载时间。而且似乎Rich Code Navigation 功能根本不会真正影响这个问题。

    更新(2022 年 3 月 7 日): 我再次遇到了这个问题,它似乎发生在一个非常特殊的情况下。因此,每当我遇到断点然后进行编辑并执行Edit and Continue 时,似乎Hot Reload 搜索整个项目以查找任何其他更改(尽管更改仅在一个文件和一行代码),因此在更大的项目上花费更长的时间,这反过来又会弹出这个Checking for any code updates 弹出窗口,而Hot Reload 会寻找重新编译的更改。因此,在 Visual Studio 团队解决与 Hot Reload 功能有关的其他性能问题之前,如果此问题导致您调试和处理项目的能力出现巨大延迟,我建议关闭此功能。

    对于在运行应用程序时编辑 Razor 文件(例如 .cshtml.razor),如果您只是对视图进行更改,我建议在不调试的情况下运行它。这样您在编辑视图时仍然可以使用Hot Reload 而不会遇到此问题。

    【讨论】:

    • 我也有同样的问题,在 VS 2022 上也有 .NET 6(使用 .NET 5.0 没问题)
    • 虽然我提到的上述建议在某种程度上似乎有效,但我感觉这是 .NET 6 新引入的性能问题(以及所有 .NET 代码的热重载)。在通过多个调试会话进行进一步测试后,即使关闭这两个设置(但性能似乎更好),似乎 VS2022 仍在执行此操作......另外,更不用说,当我在.NET Core 3.1 和相同的 VS2022,这根本没有发生(并且所有 .NET 的热重载 - 或编辑并继续功能 - 仍然启用)。
    • @Enrico 您可以在以下位置找到它:工具 -> 选项 -> 环境 -> 预览功能
    • 更新到 Visual Studio 17.1.0 后,我不再看到这个问题了。
    • 我在 17.1.2 再次看到这个问题 :(
    【解决方案2】:

    我通过取消选中以下选项解决了这个问题:

    工具-> 选项-> .NET/C++ 热重载 -> 启用热重载并在调试时编辑并继续

    希望它有效。

    【讨论】:

      猜你喜欢
      • 2021-10-04
      • 2022-06-15
      • 2021-12-21
      • 1970-01-01
      • 2022-12-23
      • 2021-09-03
      • 2021-03-20
      • 2022-01-05
      • 2021-10-09
      相关资源
      最近更新 更多