为了账号安全,请及时绑定邮箱和手机立即绑定

C# 在 Visual Studio IDE 中尝试捕获失败很慢

C# 在 Visual Studio IDE 中尝试捕获失败很慢

C#
慕码人8056858 2021-06-23 18:05:25
有谁知道如何停止以下问题:有时您必须使用 Try-Catch 块来查看值是否可以转换为预期类型。例如,如果您不知道原始值是一个字符串,则不能只使用 TryParse。不幸的是,我刚刚发现了一个让生活变得困难的 Visual Studio IDE 怪癖。要查看这一点,请创建一个 Winforms 项目并将以下代码添加到表单加载中:        private void Form1_Load(object sender, EventArgs e)    {        Stopwatch stopWatch = new Stopwatch(); stopWatch.Start();        int numTries = 1000;        object obj = "";        for (int i = 0; i < numTries; i++)        {            try            {                int val = (int)obj;            }            catch (System.InvalidCastException)            {            }        }        TimeSpan ts = stopWatch.Elapsed;        string elapsedTime = $"{numTries} failed try-catch took a time of {ts.Hours:00}:{ts.Minutes:00}:{ts.Seconds:00}";        MessageBox.Show(elapsedTime);    }当我在 IDE 中运行它时,代码需要 17 秒来处理 1000 个失败的 try-catch 块。相比之下,如果我在 IDE 之外运行调试版本,花费的时间太短,甚至无法注册。这是我正在使用的编辑器的代码调试问题。我使用的是 Visual Studio 2017 Enterprise,版本 15.4.0,.NET Framework 4.7.02046
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 115 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信