Share via


IAsyncBatchObserver<T> 介面

定義

此介面會將 IAsyncObserver 介面一般化,以允許生產及取用批次的專案。

請注意,此介面是由專案取用者實作,並叫用專案產生者) 使用的 (。 這表示資料流程的取用者端點會實作這個介面。

public interface IAsyncBatchObserver<in T> : Orleans.Streams.IAsyncObserver<in T>
public interface IAsyncBatchObserver<T>
type IAsyncBatchObserver<'T> = interface
    interface IAsyncObserver<'T>
type IAsyncBatchObserver<'T> = interface
Public Interface IAsyncBatchObserver(Of In T)
Implements IAsyncObserver(Of In T)
Public Interface IAsyncBatchObserver(Of T)

類型參數

T

觀察者所取用的物件類型。

這是反變數的型別參數。 也就是說,您可以使用您指定的類型,或衍生程度較低的任何類型。 如需共變數與反變數的詳細資訊,請參閱泛型中的共變數與反變數
衍生
實作

方法

OnCompletedAsync()

通知取用者資料流程已完成。

當取用者完成處理資料流程關閉時,應該完成從這個方法傳回的工作。

OnErrorAsync(Exception)

通知取用者資料流程發生錯誤。

當取用者完成處理資料流程關閉時,應該完成從這個方法傳回的工作。

OnNextAsync(IList<SequentialItem<T>>)

將下一批專案傳遞至取用者。

當取用者已充分處理專案處理,以符合任何行為保證時,應該完成從這個方法傳回的工作。

當取用者是) 資料流程的 (產生者端點時,當資料流程實作接受專案的責任,並確保符合其傳遞保證時,就會完成工作。 例如,根據長期佇列的資料流程會在專案永久儲存時完成工作。 最多一次傳遞時提供最佳工作的資料流程會傳回已經完成的工作。

當產生者是) 資料流程 (取用者端點時,當取用者程式碼接受專案的責任時,應該由取用者程式碼完成工作。 特別是,如果資料流程提供者保證至少傳遞一次,則在取用者傳回的工作完成之前,不應該將專案視為傳遞。

OnNextAsync(T, StreamSequenceToken)

將下一個專案傳遞至取用者。

當取用者已充分處理專案處理,以符合任何行為保證時,應該完成從這個方法傳回的工作。

當取用者是) 資料流程的 (產生者端點時,當資料流程實作接受專案的責任,並確保其傳遞保證完成工作。 例如,根據長期佇列的資料流程會在專案永久儲存時完成工作。 最多一次傳遞時提供最佳工作的資料流程會傳回已經完成的工作。

當產生者是) 資料流程 (取用者端點時,當取用者程式碼接受專案的責任時,應該由取用者程式碼完成工作。 特別是,如果資料流程提供者保證至少傳遞一次,則在取用者傳回的工作完成之前,不應將專案視為傳遞。

(繼承來源 IAsyncObserver<T>)
OnNextBatchAsync(IEnumerable<T>, StreamSequenceToken)

將下一批專案傳遞至取用者。

當取用者已充分處理批次中的所有專案,以符合任何行為保證時,應該完成從這個方法傳回的工作。

也就是說,傳回之工作的語意與 OnNextAsync 針對 批次中的所有專案擴充相同。

適用於