【发布时间】:2013-01-04 18:49:32
【问题描述】:
我正在尝试使用带有布尔条件的断点在 VS2010 中调试程序。这个特殊的断点非常慢,使我的程序运行速度比没有条件或使用常规无条件断点慢数百倍。
我的问题是,这是 Visual Studio 的常见问题吗?我不敢相信调试器会这么慢?布尔表达式非常简单,它只是说当 i == x 在 for 循环中时中断程序。
感谢任何帮助,因为它使调试变得非常痛苦。
谢谢 理查德
public static RawNetCalculationResults newCATXLNets(IList<Loss> RawLosses, IList<ReinsuranceProgramme> Programme) //Loss contains the properties Year, EventID, Loss Value
{
List<Recoveries> NetRawLosses = new List<Recoveries>(RawLosses.Count * Programme.Count); //Initiate list with required capacity
//Loop over each element in RawLosses List and do some calculations
foreach (var e in RawLosses)
{ //<----BREAK POINT HERE (e.Year == x)
foreach (var layer in Programme.Where(x => x.Type == ReinsuranceType.CATXL))
{
【问题讨论】:
-
它可能不是调试器。你能给我们看看代码吗?
-
我用代码编辑了我的问题。我在外循环上有一个断点。所以当外循环中某个元素的属性达到 x 时(x 是一个 int,表示 List
中包含的属性 Year)。删除断点意味着我的代码运行速度非常快(整个循环只需几秒钟),添加单个断点意味着大约需要 20 分钟。 -
在这里发现了一个类似的问题:stackoverflow.com/questions/32391419/…
标签: c# visual-studio-2010 debugging