Программа / IDE для сохранения состояния работающей программы и последующего восстановления - PullRequest
1 голос
/ 15 сентября 2010

У меня есть симулятор, написанный на C ++, который читает файл и обрабатывает его построчно.Это трудоемкий процесс.В основном я сталкиваюсь с ошибками времени рома, когда программа вылетает через 15-20 минут.Я начинаю отладку, и программе требуется столько же времени, чтобы достичь точки останова, которую я установил.Я проверяю несколько переменных и перебираю код, чтобы увидеть, что происходит, внести некоторые изменения и перезапустить мою программу снова.В большинстве случаев мне приходится отлаживать программу несколько раз, прежде чем вносить реальные изменения в код.Ожидание 15 минут каждый раз, когда выполнение достигает точки останова, расточительно.Есть ли способ, которым я могу сохранить состояние программы определенной точки останова, а затем просто начать запуск / отладку оттуда.

Я уверен, что я не единственный, кто столкнулся с этой проблемой.Для этого должно быть решение.

1 Ответ

0 голосов
/ 15 сентября 2010

Лучший способ, я думаю, специфичен для конкретной ситуации. В вашем случае создайте какой-нибудь формат, в котором вы можете сохранить ваш прогресс и сохранить его / обновить его в файл по мере вашего прогресса. Затем, после перезапуска, некоторая логика для определения, возобновить или перезапустить.

Кроме того, разбить программу на этапы, которые вы можете подделать или пропустить?

Чтобы сделать иначе, потребуется неэффективный и даже сомнительно возможный дамп памяти / реестра в «безопасных точках восстановления» и перезагрузка. Я думаю, что самая близкая вещь, реализованная для этого, это виртуализация всей среды с «моментальными снимками» (VMWare Workstation, Windows Virtual PC?). Это может быть вариант, но он будет почти таким же медленным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...