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() |
不应调用此构造函数。 我们公开它,以便客户端代码(粒度的子类)不必添加构造函数。 客户端代码应使用 GrainFactory 属性获取对 Grain 的引用。 |
Grain(IGrainContext, IGrainRuntime) |
粒度实现者不必公开此构造函数,但可以选择这样做。 此构造函数特别适用于单元测试,其中测试代码可以创建粒度并将 IGrainIdentity 和 IGrainRuntime 替换为测试双精度(模拟/存根)。 |
Grain(IGrainIdentity, IGrainRuntime) |
粒度实现者不必公开此构造函数,但可以选择这样做。 此构造函数特别适用于单元测试,其中测试代码可以创建粒度并将 IGrainIdentity 和 IGrainRuntime 替换为测试双精度(模拟/存根)。 |
属性
GrainContext |
所有粒度类的抽象基类。 |
GrainFactory |
获取可用于访问其他粒度的对象。 如果此粒度未与运行时关联,则为 Null,例如直接为单元测试创建时。 |
GrainReference |
所有粒度类的抽象基类。 |
IdentityString |
粒度的 SiloIdentity 的字符串表示形式,包括类型和主键。 |
RuntimeIdentity |
当前接收器的唯一标识符。 此字符串没有语义内容,但对日志记录可能很有用。 |
ServiceProvider |
获取由运行时管理的 IServiceProvider。 如果此粒度未与运行时关联,则为 Null,例如直接为单元测试创建时。 |
方法
DeactivateOnIdle() |
完成当前粒度方法调用后,停用粒度激活。 此调用将标记当前粒度的激活,以在当前方法末尾停用和删除。 下次调用此粒度将导致使用不同的激活,这通常意味着运行时会自动创建新的激活。 |
DelayDeactivation(TimeSpan) |
延迟此激活至少在指定的持续时间内停用。
正 |
GetLogger() |
返回此粒度的代码可用于跟踪的记录器对象。 记录器的名称将派生自粒度类名。 |
GetLogger(String) |
返回此粒度的代码可用于跟踪的记录器对象。 |
GetReminder(String) |
返回以前注册的提醒。 |
GetReminders() |
返回由粒度注册的所有提醒的列表。 |
GetStreamProvider(String) |
所有粒度类的抽象基类。 |
GetStreamProviders() |
所有粒度类的抽象基类。 |
MigrateOnIdle() |
开始尝试将此实例迁移到另一个位置。 迁移捕获当前 RequestContext,使其可供激活的放置控制器使用,以便在选择新位置时可以考虑它。 迁移将异步发生,如果未执行任何请求,并且如果激活的放置控制器未选择备用位置,则不会发生迁移。 |
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 |
所有粒度类的抽象基类。 |