Комментарии 7
А вы уверены, что не «детерминированность»?
0
Текущая стабильная версия gdb 7.6.2 позволяет ставить checkpoint — это точка в которой делается snapshot состояния программы. Можно возвращаться к этим точкам и начинать отладку заново. Часто использую на практике при отладке больших программ.
Еще в документации сказано, что можно записывать исполнение программы (Process Record and Replay) для последующего проигрывания с отладкой. Также в документации говорится о возможности Reverse Execution. Эти две вещи не пробывал. Интересно было бы узнать насколько хорошо они работают.
Еще в документации сказано, что можно записывать исполнение программы (Process Record and Replay) для последующего проигрывания с отладкой. Также в документации говорится о возможности Reverse Execution. Эти две вещи не пробывал. Интересно было бы узнать насколько хорошо они работают.
+1
Использую reverse execution в работе. Очень приятная возможность, но со своими ограничениями — сильно тормозит программу (код, который просто так выполняется за незаметные доли секунды, приходится ожидать секунду-две), необходимо выполнять команду record в точке, откуда хотим начать сохраняться.
Но удобно, слов нет.
Но удобно, слов нет.
+1
И точно. Приятно, что при этом поддерживаются целевые архитектуры Linux IA-32 и EM64T. И, собственно, это почти всё, что поддерживается, что печально. Не хватает других архитектур и ОС.
Надо будет попробовать более свежую версию GDB для отладки своих приложений. В теории всё просто, но хочется посмотреть на скорость работы, а также на накладные расходы по памяти.
Надо будет попробовать более свежую версию GDB для отладки своих приложений. В теории всё просто, но хочется посмотреть на скорость работы, а также на накладные расходы по памяти.
0
JVM поддерживает команду drop frame, что хоть и существенно более простая операция, но на практике очень часто бывает достаточным.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Обращая симулируемое время