搭配 COM+ 佇列元件使用 COM+ 事件

COM+ 事件服務可用來管理從發行者傳遞至訂閱者的事件。 COM+ 佇列元件服務可用來讓發行者和訂閱者處理時間獨立,方法是將發行者的訊息排入佇列,之後再將它重新執行給訂閱者。 您是否需要使用佇列元件服務,取決於應用程式的基礎商務邏輯。 如果您需要有與時間無關的事件,您可以使用 COM+ 事件服務搭配 COM+ 佇列元件服務來建立事件。

注意

如需使用 COM+ 佇列元件服務的其他資訊,請參閱 COM+ 佇列元件

 

佇列元件服務會在單一訊息內維護方法的順序調用。 錄製器會將所有方法調用批次處理成訊息,然後播放程式會依序叫用這些方法,以便在處理訊息時依序叫用這些方法。

已排入佇列的元件錄製器和播放機可以放在下列兩個位置之一:

  • 在發行者和事件物件之間
  • 事件物件與訂閱者之間

如果您在發行者和事件物件之間放置錄製器和播放程式,您會讓 事件類別 元件排入佇列。 事件類別元件必須標示為佇列,並由播放機在與發行者不同的進程中啟動。

若要以非同步方式傳遞事件,請在事件物件與訂閱者之間撰寫錄製器和播放程式,並設定訂閱物件的 Queued 屬性。 這會設定 SubscriberMoniker,如下所示:「queue:/new:/ {12345678-1234-1234-1234-123456789012} 」。

在事件情況下使用已排入佇列的元件時,會考慮傳遞含意的順序。 由於已排入佇列的元件服務會記錄並播放單一訊息中單一物件存留期內的所有呼叫,因此所有呼叫都會以進行的順序重新執行。 不過,如果有一個以上的會話具有一個以上的物件,就無法保證順序。 如果順序很重要,請確定必須依序播放的呼叫位於相同的物件實例上。

篩選 COM+ 中的事件

在 COM+ 中發佈和傳遞事件

訂用帳戶

COM+ 事件類別物件