Grain 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
所有粒紋類別的抽象基類。
public abstract class Grain : Orleans.Runtime.IAddressable
public abstract class Grain : Orleans.ILifecycleParticipant<Orleans.Runtime.IGrainLifecycle>, Orleans.Runtime.IAddressable
public abstract class Grain : Orleans.IGrainBase, Orleans.Runtime.IAddressable
type Grain = class
interface IAddressable
type Grain = class
interface IAddressable
interface ILifecycleParticipant<IGrainLifecycle>
type Grain = class
interface IGrainBase
interface IAddressable
Public MustInherit Class Grain
Implements IAddressable
Public MustInherit Class Grain
Implements IAddressable, ILifecycleParticipant(Of IGrainLifecycle)
Public MustInherit Class Grain
Implements IAddressable, IGrainBase
- 繼承
-
Grain
- 衍生
- 實作
建構函式
Grain() |
這個建構函式絕對不應該叫用。 我們會公開它,讓 Grain) 的子類別 (用戶端程式代碼不需要新增建構函式。 用戶端程式代碼應該使用 GrainFactory 屬性來取得 Grain 的參考。 |
Grain(IGrainContext, IGrainRuntime) |
粒紋實作器不需要公開此建構函式,但可以選擇這麼做。 此建構函式特別適用於單元測試,其中測試程式代碼可以建立 Grain,並以測試雙精度浮點數取代 IGrainIdentity 和 IGrainRuntime, (模擬/存根) 。 |
Grain(IGrainIdentity, IGrainRuntime) |
粒紋實作器不需要公開此建構函式,但可以選擇這麼做。 此建構函式特別適用於單元測試,其中測試程式代碼可以建立 Grain,並以測試雙精度浮點數取代 IGrainIdentity 和 IGrainRuntime, (模擬/存根) 。 |
屬性
GrainFactory |
取得對象,這個物件可用來存取其他粒紋。 如果此粒紋未與運行時間相關聯,則為 Null,例如直接針對單元測試建立時。 |
GrainReference |
所有粒紋類別的抽象基類。 |
IdentityString |
粒紋的 SiloIdentity 字串表示,包括類型和主鍵。 |
RuntimeIdentity |
目前尋址接收器的唯一標識碼。 此字串沒有語意內容,但對於記錄可能很有用。 |
ServiceProvider |
取得運行時間管理的 IServiceProvider。 如果此粒紋未與運行時間相關聯,則為 Null,例如直接針對單元測試建立時。 |
方法
DeactivateOnIdle() |
在目前的 Grain 方法呼叫完成之後,停用此粒紋的啟用。 此呼叫會將目前粒紋的啟用標示為停用,並在目前方法的結尾移除。 下一次呼叫此粒紋會導致使用不同的啟用,這通常表示運行時間會自動建立新的啟用。 |
DelayDeactivation(TimeSpan) |
在指定的期間內,至少延遲停用此啟用。
正 |
GetLogger() |
傳回記錄器物件,此粒紋的程式代碼可用於追蹤。 記錄器的名稱會衍生自粒紋類別名稱。 |
GetLogger(String) |
傳回記錄器物件,此粒紋的程式代碼可用於追蹤。 |
GetReminder(String) |
傳回先前註冊的提醒。 |
GetReminders() |
傳回由粒紋註冊的所有提醒清單。 |
GetStreamProvider(String) |
所有粒紋類別的抽象基類。 |
GetStreamProviders() |
所有粒紋類別的抽象基類。 |
MigrateOnIdle() |
開始嘗試將此實例移轉至另一個位置。 移轉會擷取目前的 RequestContext,使其可供啟用的放置主管使用,以便在選取新位置時加以考慮。 當沒有任何要求正在執行時,移轉將會以異步方式發生,而且如果啟用的放置 Director 未選取替代位置,則不會發生。 |
OnActivateAsync() |
這個方法會在啟動粒紋的程序結束時呼叫。 它會在任何訊息分派到粒紋之前呼叫。 對於宣告持續性狀態的粒紋,在填入 State 屬性之後,會呼叫這個方法。 |
OnActivateAsync(CancellationToken) |
這個方法會在啟動粒紋的程序結束時呼叫。 它會在任何訊息分派到粒紋之前呼叫。 對於宣告持續性狀態的粒紋,在填入 State 屬性之後,會呼叫這個方法。 |
OnDeactivateAsync() |
這個方法會在停用粒紋的程序開頭呼叫。 |
OnDeactivateAsync(DeactivationReason, CancellationToken) |
這個方法會在停用粒紋的程序開頭呼叫。 |
Participate(IGrainLifecycle) |
所有粒紋類別的抽象基類。 |
RegisterOrUpdateReminder(String, TimeSpan, TimeSpan) |
註冊持續性可靠提醒,以將定期通知傳送 (提醒) 到粒紋。
粒紋必須實作 |
RegisterTimer(Func<Object,Task>, Object, TimeSpan, TimeSpan) |
註冊定時器以將定期回呼傳送至此粒紋。 |
UnregisterReminder(IGrainReminder) |
取消註冊先前註冊的提醒。 |
明確介面實作
IGrainBase.GrainContext |
所有粒紋類別的抽象基類。 |
擴充方法
DeactivateOnIdle(IGrainBase) |
完成目前的 Grain 方法呼叫之後,請停用此粒紋啟用。 此呼叫會將目前粒紋的啟用標示為停用,並在目前方法的結尾移除。 下一次呼叫此粒紋會導致使用不同的啟用,這通常表示運行時間會自動建立新的啟用。 |
MigrateOnIdle(IGrainBase) |
開始嘗試將此實例移轉至另一個位置。 移轉會擷取目前的 RequestContext,使其可供啟用的放置主管使用,以便在選取新位置時加以考慮。 當沒有任何要求正在執行時,移轉將會以異步方式發生,而且如果啟用的放置 Director 未選取替代位置,則不會發生。 |
AsReference(IAddressable, Type) |
傳回所提供之粒紋的具型別參考。 |
AsReference<TGrainInterface>(IAddressable) |
傳回所提供之粒紋的具型別參考。 |
BindGrainReference(IAddressable, IGrainFactory) |
將粒紋參考系結至提供的 IGrainFactory。 |
Cast(IAddressable, Type) |
傳回所提供之粒紋的具型別參考。 |
Cast<TGrainInterface>(IAddressable) |
傳回所提供之粒紋的具型別參考。 |
GetGrainId(IAddressable) |
傳回對應至所提供粒紋的粒紋標識碼。 |
GetPrimaryKey(IAddressable) |
傳 Guid 回粒紋主鍵的表示。 |
GetPrimaryKey(IAddressable, String) |
傳 Guid 回粒紋主鍵的表示。 |
GetPrimaryKeyLong(IAddressable) |
傳 |
GetPrimaryKeyLong(IAddressable, String) |
傳 |
GetPrimaryKeyString(IAddressable) |
傳 |
IsPrimaryKeyBasedOnLong(IAddressable) |
傳回主鍵的一部分是否為類型 |
GetReminder(Grain, String) |
傳回先前註冊的提醒。 |
GetReminder(IGrainBase, String) |
傳回先前註冊的提醒。 |
GetReminders(Grain) |
傳回由粒紋註冊的所有提醒清單。 |
GetReminders(IGrainBase) |
傳回由粒紋註冊的所有提醒清單。 |
RegisterOrUpdateReminder(Grain, String, TimeSpan, TimeSpan) |
註冊持續性可靠提醒,以將定期通知傳送 (提醒) 到粒紋。
粒紋必須實作 |
RegisterOrUpdateReminder(IGrainBase, String, TimeSpan, TimeSpan) |
註冊持續性可靠提醒,以將定期通知傳送 (提醒) 到粒紋。
粒紋必須實作 |
UnregisterReminder(Grain, IGrainReminder) |
取消註冊先前註冊的提醒。 |
UnregisterReminder(IGrainBase, IGrainReminder) |
取消註冊先前註冊的提醒。 |
GetStreamProvider(Grain, String) |
取得具有指定 |
GetStreamProvider(IGrainBase, String) |
取得具有指定 |
GetLogger(Grain) |
傳回記錄器物件,此粒紋的程式代碼可用於追蹤。 記錄器的名稱會衍生自粒紋類別名稱。 |
GetLogger(Grain, String) |
傳回記錄器物件,此粒紋的程式代碼可用於追蹤。 |
GetGrainStorage(Grain, IServiceProvider) |
取得與粒紋類型相關聯的儲存提供者。 |