LogConsistentGrain<TView> 类

定义

使用日志一致性管理状态的所有粒度的基类。 它等效 Grain<TGrainState> 于使用日志一致性的 grain。 (SiloAssemblyLoader 使用它提取类型)

public abstract class LogConsistentGrain<TView> : Orleans.Grain, Orleans.ILifecycleParticipant<Orleans.Runtime.IGrainLifecycle>
type LogConsistentGrain<'View> = class
    inherit Grain
    interface ILifecycleParticipant<IGrainLifecycle>
Public MustInherit Class LogConsistentGrain(Of TView)
Inherits Grain
Implements ILifecycleParticipant(Of IGrainLifecycle)

类型参数

TView

视图的类型

继承
LogConsistentGrain<TView>
派生
实现

构造函数

LogConsistentGrain<TView>()

使用日志一致性管理状态的所有粒度的基类。 它等效 Grain<TGrainState> 于使用日志一致性的 grain。 (SiloAssemblyLoader 使用它提取类型)

LogConsistentGrain<TView>(IGrainIdentity, IGrainRuntime)

此构造函数特别适用于单元测试,其中测试代码可以创建 Grain 并将 IGrainIdentity、IGrainRuntime 和 State 替换为测试双精度 (模拟/存根) 。

属性

DefaultAdaptorFactory

获取要使用的默认适配器工厂;如果没有默认 (则为 null,在这种情况下,用户必须配置一致性提供程序)

GrainContext

使用日志一致性管理状态的所有粒度的基类。 它等效 Grain<TGrainState> 于使用日志一致性的 grain。 (SiloAssemblyLoader 使用它提取类型)

(继承自 Grain)
GrainFactory

获取可用于访问其他粒度的对象。 如果此粒度未与运行时关联,例如直接创建单元测试时,则为 Null。

(继承自 Grain)
GrainReference

使用日志一致性管理状态的所有粒度的基类。 它等效 Grain<TGrainState> 于使用日志一致性的 grain。 (SiloAssemblyLoader 使用它提取类型)

(继承自 Grain)
IdentityString

grain 的 SiloIdentity 的字符串表示形式,包括类型和主键。

(继承自 Grain)
RuntimeIdentity

当前接收器的唯一标识符。 此字符串没有语义内容,但它可能对日志记录很有用。

(继承自 Grain)
ServiceProvider

获取由运行时管理的 IServiceProvider。 如果此粒度未与运行时关联,例如直接创建单元测试时,则为 Null。

(继承自 Grain)

方法

DeactivateOnIdle()

在当前 grain 方法调用完成后,停用 grain 的此激活。 此调用会将当前粒度的此激活标记为在当前方法结束时停用和删除。 下一次调用此粒度将导致使用不同的激活,这通常意味着运行时会自动创建新激活。

(继承自 Grain)
DelayDeactivation(TimeSpan)

至少在指定的持续时间内延迟停用此激活。 正 timeSpan 值表示“阻止该时间跨度内此激活的 GC”。 负 timeSpan 值表示“取消 DelayDeactivation 调用的上一设置,使此激活行为基于常规激活垃圾回收设置”。 DeactivateOnIdle 方法将撤消/替代任何当前“保持活动”设置,使此粒度立即可用于停用。

(继承自 Grain)
GetLogger()

返回此 grain 的代码可用于跟踪的记录器对象。 记录器的名称将派生自 grain 类名。

(继承自 Grain)
GetLogger(String)

返回此 grain 的代码可用于跟踪的记录器对象。

(继承自 Grain)
GetReminder(String)

返回以前注册的提醒。

(继承自 Grain)
GetReminders()

返回 grain 注册的所有提醒的列表。

(继承自 Grain)
GetStreamProvider(String)

使用日志一致性管理状态的所有粒度的基类。 它等效 Grain<TGrainState> 于使用日志一致性的 grain。 (SiloAssemblyLoader 使用它提取类型)

(继承自 Grain)
GetStreamProviders()

使用日志一致性管理状态的所有粒度的基类。 它等效 Grain<TGrainState> 于使用日志一致性的 grain。 (SiloAssemblyLoader 使用它提取类型)

(继承自 Grain)
InstallAdaptor(ILogViewAdaptorFactory, Object, String, IGrainStorage, ILogConsistencyProtocolServices)

在 grain 构造后立即调用 以安装日志视图适配器

MigrateOnIdle()

开始尝试将此实例迁移到另一个位置。 迁移捕获当前 RequestContext,使其可供激活的放置控制器使用,以便在选择新位置时可以考虑它。 当未执行请求时,迁移将以异步方式进行;如果激活的放置控制器未选择备用位置,则不会发生迁移。

(继承自 Grain)
OnActivateAsync()

此方法在激活粒度的过程结束时调用。 在将任何消息发送到 grain 之前调用它。 对于具有声明持久状态的粒度,此方法在填充 State 属性后调用。

(继承自 Grain)
OnActivateAsync(CancellationToken)

此方法在激活粒度的过程结束时调用。 在将任何消息发送到 grain 之前调用它。 对于具有声明持久状态的粒度,此方法在填充 State 属性后调用。

(继承自 Grain)
OnDeactivateAsync()

此方法是在停用 grain 的过程开始时调用的。

(继承自 Grain)
OnDeactivateAsync(DeactivationReason, CancellationToken)

此方法是在停用 grain 的过程开始时调用的。

(继承自 Grain)
Participate(IGrainLifecycle)

使用日志一致性管理状态的所有粒度的基类。 它等效 Grain<TGrainState> 于使用日志一致性的 grain。 (SiloAssemblyLoader 使用它提取类型)

RegisterOrUpdateReminder(String, TimeSpan, TimeSpan)

注册持久可靠的提醒,以将定期通知 (提醒) 发送到粒度。 grain 必须实现 Orleans.IRemindable 接口,并且此 grain 的提醒将发送到 ReceiveReminder 回调方法。 如果在计时器触发时停用当前粒度,则会创建此粒度的新激活来接收此提醒。 如果已存在同名的现有提醒,则此新提醒将覆盖该提醒。 此粒度的一次激活始终会收到提醒,即使此粒度存在多个激活也是如此。

(继承自 Grain)
RegisterTimer(Func<Object,Task>, Object, TimeSpan, TimeSpan)
已过时.

注册计时器以向此粒度发送定期回调。

(继承自 Grain)
UnregisterReminder(IGrainReminder)

取消注册以前注册的提醒。

(继承自 Grain)

扩展方法

AsReference<TGrainInterface>(IAddressable)

返回对所提供的粒度的类型化引用。

BindGrainReference(IAddressable, IGrainFactory)

将 grain 引用绑定到提供的 IGrainFactory

Cast(IAddressable, Type)

返回对所提供的粒度的类型化引用。

Cast<TGrainInterface>(IAddressable)

返回对所提供的粒度的类型化引用。

GetPrimaryKey(IAddressable)

返回 Guid grain 主键的表示形式。

GetPrimaryKey(IAddressable, String)

返回 Guid grain 主键的表示形式。

GetPrimaryKeyLong(IAddressable)

返回 long grain 主键的表示形式。

GetPrimaryKeyLong(IAddressable, String)

返回 long grain 主键的表示形式。

GetPrimaryKeyString(IAddressable)

返回 string grain 的主键。

IsPrimaryKeyBasedOnLong(IAddressable)

返回主键的一部分是否为 类型 long

GetLogger(Grain)

返回此 grain 的代码可用于跟踪的记录器对象。 记录器的名称将派生自 grain 类名。

GetLogger(Grain, String)

返回此 grain 的代码可用于跟踪的记录器对象。

GetGrainStorage(Grain, IServiceProvider)

获取与 grain 类型关联的存储提供程序。

适用于