WebSocketKeepAlive 類別

定義

提供在連線的 WebSocket 上傳送 WebSocket 通訊協定保持運作的能力。

public ref class WebSocketKeepAlive sealed : IBackgroundTask
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class WebSocketKeepAlive final : IBackgroundTask
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class WebSocketKeepAlive final : IBackgroundTask
[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.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class WebSocketKeepAlive : IBackgroundTask
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class WebSocketKeepAlive : IBackgroundTask
Public NotInheritable Class WebSocketKeepAlive
Implements IBackgroundTask
繼承
Object Platform::Object IInspectable WebSocketKeepAlive
屬性
實作

Windows 需求

裝置系列
Windows 10 (已於 10.0.10240.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)

備註

WebSocketKeepAlive 類別會與 ControlChannelTrigger 類別和相關介面搭配使用,以啟用 StreamWebSocketMessageWebSocket 類別的即時網路狀態和觸發程式。 長時間執行的網路應用程式會使用控制通道觸發程式,以將網路和系統資源使用量降到最低。 網路觸發程式可讓應用程式在一段時間後下降到低電源模式,同時仍維持建立的網路連線維持不變,但處於低電源狀態。 應用程式可以設定系統用於何時應該喚醒並傳送 WebSocket keep-alive 封包的 Keep-alive 觸發程式。

當 UWP app 不再在前景時,通常會暫停。 有一些例外狀況,應用程式不應該暫停 (主動列印、存取音訊串流,以及在背景傳輸檔案,例如) 。 ControlChannelTrigger類別可讓已建立 WebSocket 連線的網路代理程式更新系統網路連線應保持運作狀態,而且系統應該在收到應用程式網路資料或傳送 WebSocket 保持運作封包時喚醒暫停的應用程式。

WebSocketKeepAlive 會當做ControlChannelTrigger中 Keep-alive 的TaskEntryPoint使用。 開發人員必須撰寫程式碼來處理接收資料。

如需暫停和喚醒應用程式的詳細資訊, 請參閱如何設定背景連線選項

如需 WebSocket 保持運作控制框架的詳細資訊,請參閱 WebSocket 通訊協定

建構函式

WebSocketKeepAlive()

建立新的 WebSocketKeepAlive 物件。

方法

Run(IBackgroundTaskInstance)

在連線的 WebSocket 上傳送 WebSocket 通訊協定保持運作。

適用於