手寫筆的執行緒考慮Input API
RealTimeStylus物件的設計目的是提供從平板電腦畫筆對資料流程的即時存取。 外掛程式,實作 IStylusSyncPlugin 或 IStylusAsyncPlugin 介面的物件可以新增至 RealTimeStylus 物件。 同步外掛程式通常會由高優先順序執行緒上的 RealTimeStylus 物件直接呼叫,而非同步外掛程式通常會在應用程式的使用者介面上呼叫, (UI) 執行緒。 針對需要對資料流程進行即時存取的工作建立或使用同步外掛程式,而且計算方式為 Undemanding,例如封包篩選。 針對不需要即時存取資料流程的工作建立或使用非同步外掛程式,例如筆跡集合。
由於 RealTimeStylus 物件的非同步外掛程式集合外掛程式資料已排入佇列,因此非同步外掛程式可能會在接收其 RealTimeStylusDisabled 方法呼叫之前接收資料,但在 停用 RealTimeStylus 物件之後。 請注意,如果已停用RealTimeStylus 物件,某些 RealTimeStylus物件的方法和屬性會擲回例外狀況。
下列 IStylusSyncPlugin 介面方法可能會在平板電腦畫筆資料執行緒以外的執行緒上呼叫。
- RealTimeStylusEnabled和RealTimeStylusDisabled方法會線上程上呼叫,以更新RealTimeStylus物件的Enabled屬性,或在啟用RealTimeStylus物件時加入或移除外掛程式。
- CustomStylusDataAdded方法會在呼叫RealTimeStylus物件的AddCustomStylusDataToQueue方法的執行緒上呼叫。
- Error方法會在擲回例外狀況時執行同步外掛程式的執行緒上呼叫。
若要從同步外掛程式與應用程式互動,請使用RealTimeStylus物件的AddCustomStylusDataToQueue方法,並在其中一個非同步外掛程式中處理自訂手寫筆資料。如果您從同步外掛程式對另一個執行緒進行同步呼叫,您可以封鎖RealTimeStylus物件,進而封鎖筆跡集合。
某些工作可能需要計算需求,但仍需要對平板電腦手寫筆資料流程進行即時存取,例如多重按鍵手勢辨識。 StylusInput API 提供串聯 的 RealTimeStylus 模型,可讓您使用兩個 RealTimeStylus 物件,每個物件都會從不同的執行緒呼叫其同步外掛程式。 如需串聯 RealTimeStylus 模型的詳細資訊,請參閱 Cascaded RealTimeStylus 模型。
注意
您無法將 RealTimeStylus 物件附加至不同進程中的視窗或控制項。
如需平板電腦一般執行緒考慮的詳細資訊,請參閱 平板電腦執行緒考慮