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

指出如果已不再符合其中一個必要條件,背景工作是否會取消。

IsNetworkRequested

指出在執行背景工作時是否要讓網路保持啟動。

IsRunningTaskInStandbySupported

表示要向系統註冊的背景工作。

Name

取得或設定背景工作的名稱。

TaskEntryPoint

取得或設定類別,這個類別會執行背景工作的工作。

TaskGroup

取得和設定群組識別碼。

方法

AddCondition(IBackgroundCondition)

將條件新增至背景工作。

Register()

向系統註冊背景工作。

Register(String)

表示要向系統註冊的背景工作。

SetTaskEntryPointClsid(Guid)

使用現有的 BackgroundTaskBuilder 物件指派 COM CLSID 進入點。

SetTrigger(IBackgroundTrigger)

設定背景工作的事件觸發程式。

Validate()

表示要向系統註冊的背景工作。

適用於