IBackgroundTaskInstance.GetDeferral メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
IBackgroundTask.Run メソッドが戻った後もバックグラウンド タスクが引き続き作業を実行する可能性があることをシステムに通知します。
public:
BackgroundTaskDeferral ^ GetDeferral();
BackgroundTaskDeferral GetDeferral();
public BackgroundTaskDeferral GetDeferral();
function getDeferral()
Public Function GetDeferral () As BackgroundTaskDeferral
戻り値
バックグラウンド タスクの遅延。
注釈
バックグラウンド タスクが非同期操作を使用している場合、バックグラウンド タスクが作業を完了する前に Run メソッドが戻る可能性があります。 Run メソッドが戻るとすぐに、システムはバックグラウンド タスクのホスト プロセスを中断または終了する可能性があります。これにより、バックグラウンド タスクによって開始された非同期操作が完了しなくなる可能性があります。
バックグラウンド タスクの実行中にホスト プロセスが中断または終了されないようにするには、GetDeferral メソッドを使用して、開始された非同期操作ごとにバックグラウンド タスクの遅延を取得します。 次に、非同期操作が完了したら、 BackgroundTaskDeferral.Complete メソッドを呼び出します。
すべてのバックグラウンド タスクの遅延が完了していることを確認します。 ほとんどのバックグラウンド タスクにはタイムアウトがあり、その後、保留中の遅延があるかどうかに関係なく、アプリが中断または終了されます。 ただし、未処理のバックグラウンド タスクの遅延を残すことは、プロセスの有効期間をタイムリーに管理するシステムの機能を妨げます。