Поделиться через


Вызов событий приостановки, возобновления и фоновых событий в приложениях для Магазина Windows

Если в данный момент отладка не выполняется, приложение Управление жизненным циклом процессов Windows управляет состоянием выполнения приложения: запуском, приостановкой, возобновлением и завершением работы приложения в ответ на действия пользователя и состояние устройства. При отладке Windows отключает эти события активации. В этом разделе описывается запуск этих событий в отладчике.

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

Дополнительные сведения об управлении жизненным циклом процессов и фоновых задачах см. в разделе Launching, resuming, and multitasking.

Содержание раздела

Trigger Process Lifecycle Management events

Trigger background tasks

  • Trigger a background task event from a standard debug session

  • Trigger a background task when the app is not running

Trigger Process Lifetime Management events and background tasks from an installed app

Diagnosing background task activation errors

События управления жизненным циклом процессов активации

Windows может приостановить работу приложения, если пользователь переходит из него или если Windows переключается в режим низкого электропотребления. Можно ответить на событие Suspending, чтобы сохранить соответствующие данные приложения и пользовательские данные в постоянном хранилище и чтобы освободить ресурсы. При переходе из состояния Приостановлено приложение возвращается в состояние Выполняется и продолжает работу с того момента, в котором оно было приостановлено. Можно ответить на событие Resuming, чтобы восстановить или обновить состояние приложения и получить назад ресурсы.

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

В отладчике Visual Studio можно вручную приостановить, возобновить и завершить работу приложения для отладки событий жизненного цикла процессов. Чтобы выполнить отладку события жизненного цикла процесса, выполните следующие действия.

  1. Задайте точку останова в обработчике события, которое необходимо отладить.

  2. Нажмите клавишу F5, чтобы начать отладку.

  3. На панели инструментов Место отладки выберите событие, которое необходимо создать.

    Приостановка, возобновление, завершение и перевод в фоновый режим для задач

    Обратите внимание, что команда Приостановить и завершить работу закрывает приложение и завершает сеанс отладки.

Активация фоновых задач

Любое приложение может зарегистрировать фоновую задачу, чтобы отвечать на некоторые системные события, даже если приложение не выполняется. Фоновые задачи не могут выполнять код, который непосредственно обновляет пользовательский интерфейс; вместо этого они показывают пользователю сведения об обновлениях плитки, обновлениях эмблемы и всплывающие уведомления. Дополнительные сведения см. в разделе Supporting your app with background tasks.

Можно активировать события, которые запускают фоновые задачи для приложения, из отладчика.

Примечание

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

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

Hh974425.collapse_all(ru-ru,VS.110).gifАктивация события фоновой задачи из стандартного сеанса отладки

  1. Задайте точку останова в коде фоновой задачи, который требуется отладить.

  2. Нажмите клавишу F5, чтобы начать отладку.

  3. Из списка событий на панели инструментов Место отладки выберите фоновую задачу, которую требуется запустить.

    Приостановка, возобновление, завершение и перевод в фоновый режим для задач

Hh974425.collapse_all(ru-ru,VS.110).gifАктивация фоновой задачи, когда приложение не выполняется

  1. Задайте точку останова в коде фоновой задачи, который требуется отладить.

  2. Откройте страницу свойств отладки для запускаемого проекта. Выберите проект в обозревателе решений. В меню Отладка выберите пункт Свойства.

    Для проектов C++ можно развернуть Свойства конфигурации, а затем выбрать Отладка.

  3. Выполните одно из следующих действий.

    • Для проектов Visual C# и Visual Basic выберите Не запускать, а отлаживать мой код при открытии.

      Свойство отладки запуска приложения C#/VB

    • Для проектов JavaScript и Visual C++ выберите Нет из списка Запустить приложение.

      Свойство отладки запуска приложения C++/VB

  4. Нажмите клавишу F5, чтобы перевести приложение в режим отладки. Обратите внимание, что в списке Процесс на панели инструментов Место отладки указывается имя пакета приложения, которое требуется указать в режиме отладки.

    Фоновая задача в списке процессов

  5. Из списка событий на панели инструментов Место отладки выберите фоновую задачу, которую требуется запустить.

    Приостановка, возобновление, завершение и перевод в фоновый режим для задач

Активация событий управления жизненным циклом процесса и фоновых задач из установленного приложения

Чтобы загрузить приложение, уже установленное в отладчик, используйте диалоговое окно "Отлаживать установленное приложение". Например, можно выполнить отладку приложения, установленного из Магазина Windows, или при наличии исходных файлов для приложения, но отсутствии для него проекта Visual Studio. С помощью диалогового окна "Отлаживать установленное приложение" можно запустить приложение в режиме отладки на компьютере Visual Studio или удаленном устройстве либо настроить приложение для выполнения в режиме отладки, но не запускать его. Дополнительные сведения см. в подразделе Запуск установленного приложения в отладчике раздела Запуск сеанса отладки для JavaScript или Visual C++, Visual C# и Visual Basic.

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

Диагностика ошибок активации фоновой задачи

В журналах диагностики в окне просмотра событий Windows для фоновой инфраструктуры содержались подробные сведения о средствах, которые можно использовать для диагностики и устранения ошибок фоновой задачи. Чтобы просмотреть журнал, выполните следующие действия.

  1. Откройте приложение просмотра событий.

  2. В панели Действия выберите Просмотр и убедитесь, что установлен флажок Отобразить аналитический и отладочный журналы.

  3. В дереве Просмотр событий (локальных) разверните узлы Microsoft, Windows и BackgroundTasksInfrastructure.

  4. Выберите журнал Диагностические.

См. также

Основные понятия

Отладка приложений для Магазина Windows

Другие ресурсы

Отладка и тестирование приложений для Магазина Windows

Application lifecycle

Launching, resuming, and multitasking