19

Если я запускаю приложение Modern-UI, а затем переключаюсь на другое приложение или обычную программу, работающую на рабочем столе, что произойдет с первым приложением? Я что- то слышал о приостановке работы первого приложения, но понял, что точно не знаю этого.

Я имею в виду, можете ли вы написать приложение SETI @ Home (BOINC), если хотите, или приложения, не находящиеся на переднем плане, всегда будут приостановлены? Вы можете изменить это? Я мог видеть, как это меняется в зависимости от доступных ресурсов, от сети переменного тока от батареи и т.д.

Этим утром я услышал о восстановлении iPad благодаря приложению "Найди мой iPad", и мне стало интересно, можно ли написать такое приложение, как Modern-UI, и заставить его работать, не будучи запущенным приложением переднего плана. (Я знаю, что вы просто напишите службу Windows или аналогичную, я не об этом спрашиваю.)

1 ответ1

23

Если я запускаю приложение Modern-UI, а затем переключаюсь на другое приложение или обычную программу, работающую на рабочем столе, что произойдет с первым приложением?

Приложение переходит в состояние ожидания - вы можете проверить его ресурсы в диспетчере задач.

Приложения будут приостановлены, когда вы их не используете, это для производительности. При приостановке вы не почувствуете «зависание» вашей системы (т.е. замедления, связанные с запуском интенсивного приложения в фоновом режиме).

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

Любое приложение в стиле Metro находится в одном из 4 состояний жизненного цикла в любой момент времени:

  • Не бегать
  • Бег
  • подвешенный
  • Отменено

По мере перехода приложения между состояниями оно получает события жизненного цикла, которые помогают обеспечить согласованное и высокопроизводительное взаимодействие с пользователем.

Есть несколько блогов MSDN, которые могут помочь вам реализовать то, что вы хотите.

Управление жизненным циклом приложений, чтобы ваши приложения чувствовали себя "всегда живыми"

Быть продуктивным, когда ваше приложение за кадром

Быть продуктивным на заднем плане - фоновые задачи

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .