2012-04-12 22 views
6

Pracuję nad projektem, w którym mam naprawdę długie pętle i zwykle napotykam problemy, gdy zbliżam się do końca pętli, ale nie sposób się tam dostać ręcznie, wchodząc do Pętla miliony czasu. Wiem, że mogłem po prostu zmienić zmienną licznika, ale w tym przypadku nie zadziałałoby, ponieważ efekty uboczne każdej iteracji nie będą miały miejsca. Czy istnieje sposób, aby zatrzymać punkt przerwania na miejscu po 999999998 iteracji? Używam Visual Studio Ostateczny 2010Debugowanie pętli for; Fast-Forward

Odpowiedz

10

umieścić punkt przerwania, prawym przyciskiem myszy na niego wybrać warunek ustawić

i == 999999998 //if your loop looks like for (var i == 0;.... 
+0

Zrobiłem to, co jest chyba to, co szukam, ale teraz, gdy istnieje punkt przerwania, że ​​debugowanie przerw na tysiąc lub tak iteracje i aby kontynuować, muszę kliknąć opcję "Przerwij wszystko" w oknie IntelliTrace. Każdy pomysł, dlaczego to się zatrzymuje i jak anulować to zachowanie? – leonsas

3

Jak mówi Raphaël, można ustawić stan na przerwania. Jeśli jednak dzieje się to w ciasnej pętli, narzut warunku może być dość znaczący. Zauważyłem, że wykonanie sprawdzenia kodu i wywołanie Debugger.Break działa w tym przypadku znacznie lepiej.

+0

Dobrze wiedzieć! –

1

jestem po prostu wklejając obraz wizualizacji Raphaël Althaus w odpowiedzi enter image description here