BackgroundTaskBuilder クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
システムに登録するバックグラウンド タスクを表します。
public ref class BackgroundTaskBuilder sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
class BackgroundTaskBuilder final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class BackgroundTaskBuilder final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
public sealed class BackgroundTaskBuilder
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class BackgroundTaskBuilder
function BackgroundTaskBuilder()
Public NotInheritable Class BackgroundTaskBuilder
- 継承
- 属性
Windows の要件
| デバイス ファミリ |
Windows 10 (10.0.10240.0 で導入)
|
| API contract |
Windows.Foundation.UniversalApiContract (v1.0 で導入)
|
注釈
注意
このクラスはアジャイルではありません。つまり、スレッド モデルとマーシャリング動作を考慮する必要があります。 詳細については、「スレッド処理とマーシャリング (C++/CX)」および「マルチスレッド環境での Windows ランタイム オブジェクトの使用 (.NET)」を参照してください。
バックグラウンド タスクでネットワーク接続が必要な場合は、次の点に注意してください。
** ネットワーク関連のトリガー**
- パケットを受信し、有効期間が短いタスクを実行する必要がある場合は、SocketActivityTrigger を使用して、バックグラウンド タスクをアクティブにします。 タスクを実行すると、電力を節約するバックグラウンド タスクが終了します。
- パケットを受信し、有効期間が長いタスクを実行する必要がある場合は、ControlChannelTrigger を使用して、バックグラウンド タスクをアクティブにします。
** ネットワーク関連の条件とフラグ**
- InternetAvailable 条件 (BackgroundTaskBuilder.AddCondition) をバックグラウンド タスクに追加して、ネットワーク スタックが実行されるまでバックグラウンド タスクのトリガーを遅延させます。 バックグラウンド タスクはネットワーク アクセスが使用可能になるまで実行されないため、この条件により電力が節約されます。 この条件では、リアルタイムのアクティブ化は行われません。
使用するトリガーに関係なく、バックグラウンド タスクで IsNetworkRequested を設定すると、バックグラウンド タスクが実行されている間、ネットワークは稼働状態のままになります。 これによって、デバイスがコネクト スタンバイ モードに入っている場合でも、タスクの実行中はネットワークを稼働状態に保つようにバックグラウンド タスク インフラストラクチャに指示されます。 バックグラウンド タスクで IsNetworkRequested が使用されていない場合、コネクト スタンバイ モードの場合 (たとえば、電話の画面がオフになっている場合など)、バックグラウンド タスクはネットワークにアクセスできません。
バージョン履歴
| Windows のバージョン | SDK バージョン | 追加された値 |
|---|---|---|
| 1703 | 15063 | TaskGroup |
| 2004 | 19041 | SetTaskEntryPointClsid |
コンストラクター
| BackgroundTaskBuilder() |
BackgroundTaskBuilder クラスのインスタンスを作成します。 |
プロパティ
| AllowRunningTaskInStandby |
システムに登録するバックグラウンド タスクを表します。 |
| CancelOnConditionLoss |
必要な条件の少なくとも 1 つが満たされなくなった場合に、バックグラウンド タスクを取り消すかどうかを示します。 |
| IsNetworkRequested |
バックグラウンド タスクの実行中にネットワークを維持するかどうかを示します。 |
| IsRunningTaskInStandbySupported |
システムに登録するバックグラウンド タスクを表します。 |
| Name |
バックグラウンド タスクの名前を取得または設定します。 |
| TaskEntryPoint |
バックグラウンド タスクの作業を実行するクラスを取得または設定します。 |
| TaskGroup |
グループ識別子を取得および設定します。 |
メソッド
| AddCondition(IBackgroundCondition) |
バックグラウンド タスクに条件を追加します。 |
| Register() |
バックグラウンド タスクをシステムに登録します。 |
| Register(String) |
システムに登録するバックグラウンド タスクを表します。 |
| SetTaskEntryPointClsid(Guid) |
既存の BackgroundTaskBuilder オブジェクトを使用して COM CLSID エントリ ポイントを割り当てます。 |
| SetTrigger(IBackgroundTrigger) |
バックグラウンド タスクのイベント トリガーを設定します。 |
| Validate() |
システムに登録するバックグラウンド タスクを表します。 |