GrainBaseExtensions.RegisterGrainTimer メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
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
に設定されている場合、タイマー コールバックは、一般的なグレイン メソッドの呼び出しと同様に、グレインの再入設定を考慮します。
タイマーは、IGrainTimerの Dispose() メソッドを呼び出すことによって、いつでも停止できます。 タイマーを破棄すると、それ以上タイマー ティックがスケジュールされなくなります。
タイマーの期限と期間は、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
- options
- GrainTimerCreationOptions
戻り値
適用対象
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
グレイン インスタンス。
- dueTime
- TimeSpan
IGrainTimer が構築されたときに指定されたコールバック メソッドを呼び出すまでの遅延時間を表す TimeSpan。 タイマーが開始されないようにするには、InfiniteTimeSpan を指定します。 タイマーをすぐに開始する Zero を指定します。
- period
- TimeSpan
IGrainTimer が構築されたときに指定されたコールバック メソッドの呼び出し間の時間間隔。 定期的なシグナリングを無効にする InfiniteTimeSpan を指定します。
戻り値
タイマーを表す IGrainTimer インスタンス。
注釈
グレイン タイマーは、既定ではグレインをアクティブにしません。
KeepAlive を true
に設定すると、各タイマー ティックによってグレイン アクティブ化の有効期間が延長されます。 タイマー ティックの頻度が低い場合でも、アイドル状態のためにグレインを非アクティブ化できます。 グレインが非アクティブ化されると、アクティブなすべてのタイマーが破棄されます。
コールバックから返された Task が解決されるまで、次のタイマー ティックはスケジュールされません。 つまり、タイマー コールバックがそれ自体と同時に実行されることはありません。
Interleave が true
に設定されている場合、タイマー コールバックは他のグレイン メソッド呼び出しやその他のタイマーとインターリーブできます。
Interleave が false
に設定されている場合、タイマー コールバックは、一般的なグレイン メソッドの呼び出しと同様に、グレインの再入設定を考慮します。
タイマーは、IGrainTimerの Dispose() メソッドを呼び出すことによって、いつでも停止できます。 タイマーを破棄すると、それ以上タイマー ティックがスケジュールされなくなります。
タイマーの期限と期間は、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
に設定されている場合、タイマー コールバックは、一般的なグレイン メソッドの呼び出しと同様に、グレインの再入設定を考慮します。
タイマーは、IGrainTimerの Dispose() メソッドを呼び出すことによって、いつでも停止できます。 タイマーを破棄すると、それ以上タイマー ティックがスケジュールされなくなります。
タイマーの期限と期間は、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
- state
- TState
コールバックに渡された状態。
- options
- GrainTimerCreationOptions
戻り値
適用対象
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
グレイン インスタンス。
- state
- TState
コールバックに渡された状態。
- dueTime
- TimeSpan
IGrainTimer が構築されたときに指定されたコールバック メソッドを呼び出すまでの遅延時間を表す TimeSpan。 タイマーが開始されないようにするには、InfiniteTimeSpan を指定します。 タイマーをすぐに開始する Zero を指定します。
- period
- TimeSpan
IGrainTimer が構築されたときに指定されたコールバック メソッドの呼び出し間の時間間隔。 定期的なシグナリングを無効にする InfiniteTimeSpan を指定します。
戻り値
タイマーを表す IGrainTimer インスタンス。