2010-11-11 3 views
1

Скажем, у меня есть сложное приложение, которое выполняет различные действия, например. выводит окно, загружает некоторые активы, обрабатывает виртуальный мир, переходит в OpenGL и т. д.Как можно «спящий режим» приложения?

Могу ли я спящий режим, т. е. сохранить его текущее состояние памяти и возобновить его по желанию безопасным образом?

Если нужно быть в безопасности, он должен будет ограничить пользователя некоторыми функциональными возможностями, пока он не будет возобновлен, это нормально.

+0

я не получил то, что я искал на самом деле, но я понял проблему , например Если мне нужен контекст OpenGL, я не могу просто вывести его из простой памяти, мне нужно будет его воссоздать и т. Д. –

ответ

0

Это действительно зависит от того, что спящий режим для вас. Если это должно быть функцией перезагрузки вашего компьютера, и ваша программа достаточно сложна, посмотрите на виртуальную машину как контейнер вашей программы. Затем используйте функцию гибернации гостевой операционной системы.

Если это не то, что вы хотите, и вы не заботитесь о сохранении состояния через ботинки, просто остановите свою программу. В linux, например, вы могли бы эвакуировать всю память, которую ваша программа должна поменять. (Я думаю, что это тоже должно быть возможно и для других ОС)

0

Если вы можете сохранять/возобновлять игры, почему бы не бизнес-приложения? Вам просто нужно сделать процесс для записи состояния приложения на диск ... затем загрузить это состояние с диска. Убедитесь, что между и до и после ничего нет.

Как осложняется тем, что на самом деле зависит от многих вещей - удаленных соединений, БД состояний, многопользовательских сред, и т.д. ...

Смежные вопросы