Сессии
Сессии - это уникальный механизм автоматического сохранения состояния при аварийном завершении (критические ошибки, сбои ОС, отключение электричества и т.п.). Система создает резервные копии данных и позволяет восстановить работу с того места, где она была прервана.
Принцип работы
Механизм сессий работает в автоматическом режиме:
Создание файла входящих данных
При запуске в папке с результатами создаётся .Resources.db - копия исходных ресурсов.
Автосохранение
Детали работы фиксируются в .Session.db каждые 15 секунд.
Работа с сессиями
сессииОткройте нужный в программе.
Если у есть сохраненные сессии, при запуске будет доступна .
Если в загрузить любые ресурсы, кнопка сессий пропадет. Чтобы ее вернуть, необходимо сбросить проект.
Структура файлов сессий
сессийКопия входящих данных.
Состояние выполнения .
Файлы сохраняются в папке с результатами и обновляются каждые 15 секунд во время работы
Ограничения системы
Глобальные переменные
Сессия сохраняет значения всех глобальных переменных, объявленных проектом. Если при восстановлении набор их имён полностью совпадает с набором в сохранённой сессии, восстанавливаются все значения, включая пустой и многострочный текст.
Если автор проекта добавил, удалил или переименовал хотя бы одну глобальную переменную, сохранённые значения не применяются частично: все глобальные переменные заполняются заново значениями проекта, а программа явно сообщает об этом.
Сессии не сохраняют состояние динамических переменных, локальные значения интерпретатора и контекст JavaScript. После восстановления эти значения и скрипты начинают работу со стандартного состояния; сохранение глобальных переменных описано выше.
Практические примеры
Самый простой пример - это динамические переменные в расширенной статистике. Допустим, ведется учет хороших результатов и заблокированных аккаунтов. Если на момент сохранения сессии счетчики имели значения 43 и 15, то после восстановления они будут равны 0 и отсчет пойдет с самого начала.