gpt4 book ai didi

c# - VS 17 打破所有异常

转载 作者:可可西里 更新时间:2023-11-01 03:10:56 24 4
gpt4 key购买 nike

Visual Studio 2017(有点突然)打破所有异常。这意味着,如果我在异常设置中停用它们(在调试时按 CTRL + ALT + E),调试器仍然会中断它们。我不知道这是否只是 VS 的一个错误,我无法更改因此不得不忍受,或者是否有一个简单的解决方案。

这是异常(exception)设置窗口: the exception settings

异常 VS 中断于: the exception

顺便说一句,我也试过那个漂亮的减号(如果我按下它什么也不会发生)或添加一个不可能的条件(VS 仍然在异常时中断)。

我还测试了其他异常(通过简单地抛出它们),我之前停用了它们,它们也被抛出,我在其他项目中测试了同样的问题,它也出现了: the issue in other projects

我什至把所有的东西都放到了一个 try catch 语句中,但 VS 仍然出错:

InitializeComponent ();
try
{
var t = new Thread (() =>
{
while (!IsHandleCreated) {} //It breaks here (similiar to the screenshots)
while (true)
Invoke (new Action (() => Size = new Size ()));
});
while (true)
{
t.Start ();
Thread.Sleep (100);
t.Abort ();
}
}
catch (ThreadAbortException) { }

它不会出现在我 PC 上的其他 IDE(如 Rider)中,也不会出现在 VS 中的其他 PC 上。它并不总是出现在我的电脑上,它最近才开始出现,而且只是在 Debug模式下。如果我继续执行(使用 F5),它就会正常继续。

编辑 当我将 try catch 放入线程中时,它的行为有点不同(我很抱歉在这里放了图片,但我认为它们在这种情况下更具表现力): new exception location

有人可以解释这种行为吗?

编辑 ThreadAbortExceptions 在 catch 语句结束时再次中断似乎是正常的。但是,VS 仍然根本不应该中断此异常。

最佳答案

我遇到了类似的问题。

我通过在工具 > 选项 > 调试 > 常规 中取消选中 “当异常跨越 AppDomain 或托管/ native 边界时中断” 来修复它

关于c# - VS 17 打破所有异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44790784/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com