Modern-UI アプリがフォアグラウンドにない場合はどうなりますか?

Modern-UI アプリがフォアグラウンドにない場合はどうなりますか?

モダンUIアプリを起動し、別のアプリやデスクトップで実行されている通常のプログラムに切り替えると、最初のアプリはどうなりますか?何か最初のアプリが停止されたことについてですが、実際には確実には分からないことに気付きました。

つまり、SETI@ホームボインク) アプリを一時停止にできますか、それともフォアグラウンドにないアプリは常に一時停止になりますか? 変更できますか? 利用可能なリソース、AC 電源とバッテリー電源での実行などに基づいて変更することは可能ですか?

今朝私は話を聞きました「iPadを探す」アプリのおかげでiPadが回復したのですが、Modern-UIアプリのようなものを書いて、フォアグラウンドアプリとして実行せずに動作させることができるかどうか疑問に思いました。(Windowsサービスなどを書くだけだということは承知していますが、私が尋ねているのはそれではありません。)

答え1

Modern-UI アプリを起動してから、別のアプリまたはデスクトップで実行されている通常のプログラムに切り替えると、最初のアプリはどうなりますか?

アプリは停止状態— タスク マネージャーでリソースを確認できます。

アプリは、使用していないときはパフォーマンスの目的で一時停止されます。一時停止中は、システムの「遅延」(つまり、バックグラウンドで負荷の高いアプリケーションを実行することによる速度低下)を感じることはありません。

Windows 8 は、バックグラウンド アプリがアクティブでないときは CPU をあまり使用しないことを考慮して設計されているため、アクティブなアプリでもシステムのパフォーマンスは良好です。

すべての Metro スタイル アプリは、常に次の 4 つのライフサイクル状態のいずれかになります。

  • 走っていない
  • ランニング
  • 一時停止中
  • 終了しました

アプリが状態間を遷移すると、ユーザーに一貫した高パフォーマンスのエクスペリエンスを提供するのに役立つライフサイクル イベントが受信されます。

ここに画像の説明を入力してください

必要なものを実装するのに役立つ MSDN ブログがいくつかあります。

アプリのライフサイクルを管理して、アプリが「常に生きている」ようにする

アプリが画面外にあるときでも生産性を維持する

バックグラウンドで生産性を高める – バックグラウンドタスク

関連情報