我正在尝试使用具有布尔条件的断点来调试VS2010中的程序。这个特定的断点非常缓慢,使我的程序运行速度比无条件或使用常规无条件断点慢几百倍。
我的问题是,这是视觉工作室的常见问题,我不敢相信调试器会这么慢吗?布尔表达式非常简单,它只是说在for循环中i == x时打破程序。
任何帮助都会受到赞赏,因为它使调试变得非常痛苦。
由于 理查德
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))
{
答案 0 :(得分:25)
是的,条件断点很慢。
作为替代方法,您可以使用Debug.Assert:
Debug.Assert( i != x );
这将导致断言在i == x
时触发,您可以从那里进行调试。