GrainBaseExtensions.RegisterGrainTimer 方法

定义

重载

RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, GrainTimerCreationOptions)

创建粒度计时器。

RegisterGrainTimer(IGrainBase, Func<Task>, GrainTimerCreationOptions)
RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, TimeSpan, TimeSpan)

创建粒度计时器。

RegisterGrainTimer(IGrainBase, Func<Task>, TimeSpan, TimeSpan)

创建粒度计时器。

RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, GrainTimerCreationOptions)

创建粒度计时器。

RegisterGrainTimer<TState>(IGrainBase, Func<TState,Task>, TState, GrainTimerCreationOptions)
RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, TimeSpan, TimeSpan)

创建粒度计时器。

RegisterGrainTimer<TState>(IGrainBase, Func<TState,Task>, TState, TimeSpan, TimeSpan)

创建粒度计时器。

RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, GrainTimerCreationOptions)

创建粒度计时器。

public static Orleans.Runtime.IGrainTimer RegisterGrainTimer (this Orleans.IGrainBase grain, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task> callback, Orleans.Runtime.GrainTimerCreationOptions options);
static member RegisterGrainTimer : Orleans.IGrainBase * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task> * Orleans.Runtime.GrainTimerCreationOptions -> Orleans.Runtime.IGrainTimer
<Extension()>
Public Function RegisterGrainTimer (grain As IGrainBase, callback As Func(Of CancellationToken, Task), options As GrainTimerCreationOptions) As IGrainTimer

参数

grain
IGrainBase

粒度实例。

callback
Func<CancellationToken,Task>

计时器回调,每当计时器到期时都会调用该回调。

options
GrainTimerCreationOptions

用于创建计时器的选项。

返回

表示计时器的 IGrainTimer 实例。

注解

默认情况下,粒度计时器不会使粒度保持活动状态。 将 KeepAlive 设置为 true 会导致每个计时器计时周期延长粒度激活的生存期。 如果计时器时钟周期不频繁,仍可因空闲而停用粒度。 停用粒度后,将丢弃所有活动计时器。

在解析从回调返回 Task 之前,不会计划下一个计时器时钟周期。 也就是说,计时器回调永远不会与自身同时执行。 如果 Interleave 设置为 true,则允许计时器回调与其他粒度方法调用和其他计时器交错。 如果 Interleave 设置为 false,计时器回调将遵循粒度的重新进入设置,就像典型的粒度方法调用一样。

可以通过调用 IGrainTimerDispose() 方法随时停止计时器。 释放计时器可防止计划任何进一步的计时器时钟周期。

可以通过调用计时器 Change(TimeSpan, TimeSpan) 方法来更新计时器截止日期和时间段。 每次更新计时器时,都将根据更新的截止日期计划下一个计时器时钟周期。 在更新后的时间段过后,将安排后续时钟周期。 请注意,此行为与 Change(TimeSpan, TimeSpan) 方法相同。

将记录从回调引发的异常,但不会阻止下一个计时器时钟周期排队。

适用于

RegisterGrainTimer(IGrainBase, Func<Task>, GrainTimerCreationOptions)

public static Orleans.Runtime.IGrainTimer RegisterGrainTimer (this Orleans.IGrainBase grain, Func<System.Threading.Tasks.Task> callback, Orleans.Runtime.GrainTimerCreationOptions options);
static member RegisterGrainTimer : Orleans.IGrainBase * Func<System.Threading.Tasks.Task> * Orleans.Runtime.GrainTimerCreationOptions -> Orleans.Runtime.IGrainTimer
<Extension()>
Public Function RegisterGrainTimer (grain As IGrainBase, callback As Func(Of Task), options As GrainTimerCreationOptions) As IGrainTimer

参数

grain
IGrainBase
callback
Func<Task>

返回

适用于

RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, TimeSpan, TimeSpan)

创建粒度计时器。

public static Orleans.Runtime.IGrainTimer RegisterGrainTimer (this Orleans.IGrainBase grain, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task> callback, TimeSpan dueTime, TimeSpan period);
static member RegisterGrainTimer : Orleans.IGrainBase * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task> * TimeSpan * TimeSpan -> Orleans.Runtime.IGrainTimer
<Extension()>
Public Function RegisterGrainTimer (grain As IGrainBase, callback As Func(Of CancellationToken, Task), dueTime As TimeSpan, period As TimeSpan) As IGrainTimer

参数

grain
IGrainBase

粒度实例。

callback
Func<CancellationToken,Task>

计时器回调,每当计时器到期时都会调用该回调。

dueTime
TimeSpan

表示在调用构造 IGrainTimer 时指定的回调方法之前延迟的时间量 TimeSpan。 指定 InfiniteTimeSpan 以防止计时器启动。 指定 Zero 立即启动计时器。

period
TimeSpan

构造 IGrainTimer 时指定的回调方法调用之间的时间间隔。 指定 InfiniteTimeSpan 以禁用定期信号。

返回

表示计时器的 IGrainTimer 实例。

适用于

RegisterGrainTimer(IGrainBase, Func<Task>, TimeSpan, TimeSpan)

创建粒度计时器。

public static Orleans.Runtime.IGrainTimer RegisterGrainTimer (this Orleans.IGrainBase grain, Func<System.Threading.Tasks.Task> callback, TimeSpan dueTime, TimeSpan period);
static member RegisterGrainTimer : Orleans.IGrainBase * Func<System.Threading.Tasks.Task> * TimeSpan * TimeSpan -> Orleans.Runtime.IGrainTimer
<Extension()>
Public Function RegisterGrainTimer (grain As IGrainBase, callback As Func(Of Task), dueTime As TimeSpan, period As TimeSpan) As IGrainTimer

参数

grain
IGrainBase

粒度实例。

callback
Func<Task>

计时器回调,每当计时器到期时都会调用该回调。

dueTime
TimeSpan

表示在调用构造 IGrainTimer 时指定的回调方法之前延迟的时间量 TimeSpan。 指定 InfiniteTimeSpan 以防止计时器启动。 指定 Zero 立即启动计时器。

period
TimeSpan

构造 IGrainTimer 时指定的回调方法调用之间的时间间隔。 指定 InfiniteTimeSpan 以禁用定期信号。

返回

表示计时器的 IGrainTimer 实例。

注解

默认情况下,粒度计时器不会使粒度保持活动状态。 将 KeepAlive 设置为 true 会导致每个计时器计时周期延长粒度激活的生存期。 如果计时器时钟周期不频繁,仍可因空闲而停用粒度。 停用粒度后,将丢弃所有活动计时器。

在解析从回调返回 Task 之前,不会计划下一个计时器时钟周期。 也就是说,计时器回调永远不会与自身同时执行。 如果 Interleave 设置为 true,则允许计时器回调与其他粒度方法调用和其他计时器交错。 如果 Interleave 设置为 false,计时器回调将遵循粒度的重新进入设置,就像典型的粒度方法调用一样。

可以通过调用 IGrainTimerDispose() 方法随时停止计时器。 释放计时器可防止计划任何进一步的计时器时钟周期。

可以通过调用计时器 Change(TimeSpan, TimeSpan) 方法来更新计时器截止日期和时间段。 每次更新计时器时,都将根据更新的截止日期计划下一个计时器时钟周期。 在更新后的时间段过后,将安排后续时钟周期。 请注意,此行为与 Change(TimeSpan, TimeSpan) 方法相同。

将记录从回调引发的异常,但不会阻止下一个计时器时钟周期排队。

适用于

RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, GrainTimerCreationOptions)

创建粒度计时器。

public static Orleans.Runtime.IGrainTimer RegisterGrainTimer<TState> (this Orleans.IGrainBase grain, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task> callback, TState state, Orleans.Runtime.GrainTimerCreationOptions options);
static member RegisterGrainTimer : Orleans.IGrainBase * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task> * 'State * Orleans.Runtime.GrainTimerCreationOptions -> Orleans.Runtime.IGrainTimer
<Extension()>
Public Function RegisterGrainTimer(Of TState) (grain As IGrainBase, callback As Func(Of TState, CancellationToken, Task), state As TState, options As GrainTimerCreationOptions) As IGrainTimer

类型参数

TState

state 参数的类型。

参数

grain
IGrainBase
callback
Func<TState,CancellationToken,Task>

计时器回调,每当计时器到期时都会调用该回调。

state
TState

传递给回调的状态。

options
GrainTimerCreationOptions

用于创建计时器的选项。

返回

表示计时器的 IGrainTimer 实例。

注解

默认情况下,粒度计时器不会使粒度保持活动状态。 将 KeepAlive 设置为 true 会导致每个计时器计时周期延长粒度激活的生存期。 如果计时器时钟周期不频繁,仍可因空闲而停用粒度。 停用粒度后,将丢弃所有活动计时器。

在解析从回调返回 Task 之前,不会计划下一个计时器时钟周期。 也就是说,计时器回调永远不会与自身同时执行。 如果 Interleave 设置为 true,则允许计时器回调与其他粒度方法调用和其他计时器交错。 如果 Interleave 设置为 false,计时器回调将遵循粒度的重新进入设置,就像典型的粒度方法调用一样。

可以通过调用 IGrainTimerDispose() 方法随时停止计时器。 释放计时器可防止计划任何进一步的计时器时钟周期。

可以通过调用计时器 Change(TimeSpan, TimeSpan) 方法来更新计时器截止日期和时间段。 每次更新计时器时,都将根据更新的截止日期计划下一个计时器时钟周期。 在更新后的时间段过后,将安排后续时钟周期。 请注意,此行为与 Change(TimeSpan, TimeSpan) 方法相同。

将记录从回调引发的异常,但不会阻止下一个计时器时钟周期排队。

适用于

RegisterGrainTimer<TState>(IGrainBase, Func<TState,Task>, TState, GrainTimerCreationOptions)

public static Orleans.Runtime.IGrainTimer RegisterGrainTimer<TState> (this Orleans.IGrainBase grain, Func<TState,System.Threading.Tasks.Task> callback, TState state, Orleans.Runtime.GrainTimerCreationOptions options);
static member RegisterGrainTimer : Orleans.IGrainBase * Func<'State, System.Threading.Tasks.Task> * 'State * Orleans.Runtime.GrainTimerCreationOptions -> Orleans.Runtime.IGrainTimer
<Extension()>
Public Function RegisterGrainTimer(Of TState) (grain As IGrainBase, callback As Func(Of TState, Task), state As TState, options As GrainTimerCreationOptions) As IGrainTimer

类型参数

TState

state 参数的类型。

参数

grain
IGrainBase
callback
Func<TState,Task>
state
TState

传递给回调的状态。

返回

适用于

RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, TimeSpan, TimeSpan)

创建粒度计时器。

public static Orleans.Runtime.IGrainTimer RegisterGrainTimer<TState> (this Orleans.IGrainBase grain, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task> callback, TState state, TimeSpan dueTime, TimeSpan period);
static member RegisterGrainTimer : Orleans.IGrainBase * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task> * 'State * TimeSpan * TimeSpan -> Orleans.Runtime.IGrainTimer
<Extension()>
Public Function RegisterGrainTimer(Of TState) (grain As IGrainBase, callback As Func(Of TState, CancellationToken, Task), state As TState, dueTime As TimeSpan, period As TimeSpan) As IGrainTimer

类型参数

TState

state 参数的类型。

参数

grain
IGrainBase

粒度实例。

callback
Func<TState,CancellationToken,Task>

计时器回调,每当计时器到期时都会调用该回调。

state
TState

传递给回调的状态。

dueTime
TimeSpan

表示在调用构造 IGrainTimer 时指定的回调方法之前延迟的时间量 TimeSpan。 指定 InfiniteTimeSpan 以防止计时器启动。 指定 Zero 立即启动计时器。

period
TimeSpan

构造 IGrainTimer 时指定的回调方法调用之间的时间间隔。 指定 InfiniteTimeSpan 以禁用定期信号。

返回

表示计时器的 IGrainTimer 实例。

适用于

RegisterGrainTimer<TState>(IGrainBase, Func<TState,Task>, TState, TimeSpan, TimeSpan)

创建粒度计时器。

public static Orleans.Runtime.IGrainTimer RegisterGrainTimer<TState> (this Orleans.IGrainBase grain, Func<TState,System.Threading.Tasks.Task> callback, TState state, TimeSpan dueTime, TimeSpan period);
static member RegisterGrainTimer : Orleans.IGrainBase * Func<'State, System.Threading.Tasks.Task> * 'State * TimeSpan * TimeSpan -> Orleans.Runtime.IGrainTimer
<Extension()>
Public Function RegisterGrainTimer(Of TState) (grain As IGrainBase, callback As Func(Of TState, Task), state As TState, dueTime As TimeSpan, period As TimeSpan) As IGrainTimer

类型参数

TState

state 参数的类型。

参数

grain
IGrainBase

粒度实例。

callback
Func<TState,Task>

计时器回调,每当计时器到期时都会调用该回调。

state
TState

传递给回调的状态。

dueTime
TimeSpan

表示在调用构造 IGrainTimer 时指定的回调方法之前延迟的时间量 TimeSpan。 指定 InfiniteTimeSpan 以防止计时器启动。 指定 Zero 立即启动计时器。

period
TimeSpan

构造 IGrainTimer 时指定的回调方法调用之间的时间间隔。 指定 InfiniteTimeSpan 以禁用定期信号。

返回

表示计时器的 IGrainTimer 实例。

适用于