BackgroundTaskBuilder クラス

定義

システムに登録するバックグラウンド タスクを表します。

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
継承
Object Platform::Object IInspectable 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()

システムに登録するバックグラウンド タスクを表します。

適用対象