我们的C#应用程序在可执行文件中工作正常,但在调试模式下突然没有响应,我们必须通过调试菜单停止程序。如何在Visual Studio调试模式下处理长执行语句?
经过调查发现,如果json包含非常大的json对象,那么在执行下面的语句时没有返回。
jsonString = Json.Encode(json);
我们正在使用System.Web.Helpers.Json编码JSON对象,当物体越来越大,这将导致在调试模式下暂停。我们试图为Json.Encode(json)添加一个手表,它将返回“评估超时”。
虽然它不会在我们的生产版本中引起任何问题,但它在调试应用程序时遇到问题,因为应用程序在执行此语句时会挂起。
我们也发现这个问题只发生在Windows 7机器上,并且在Windows 10机器中没有问题。所以我们必须使用Windows 10机器进行调试。
Windows 7下的调试模式似乎有一些限制,不允许这么长的执行语句。我可否知道是否有任何方法可以在调试模式下配置这种超时设置?
是特定的代码行在不同的线程中执行吗? – Rahul
它在UI线程中执行。我们的主要用途是在应用程序退出时保存所有运行的数据。 –
另外,它发生在* all * win7机器上,还是只有其中一个? (只是试图确定它是否是操作系统特定的,或者是该PC上的更多环境) – NPras