次の方法で共有


Grain.RegisterTimer メソッド

定義

注意事項

Use 'this.RegisterGrainTimer(callback, state, new() { DueTime = dueTime, Period = period, Interleave = true })' instead.

このグレインに定期的なコールバックを送信するタイマーを登録します。

protected virtual IDisposable RegisterTimer (Func<object,System.Threading.Tasks.Task> asyncCallback, object state, TimeSpan dueTime, TimeSpan period);
protected IDisposable RegisterTimer (Func<object,System.Threading.Tasks.Task> asyncCallback, object state, TimeSpan dueTime, TimeSpan period);
[System.Obsolete("Use 'this.RegisterGrainTimer(callback, state, new() { DueTime = dueTime, Period = period, Interleave = true })' instead.")]
protected IDisposable RegisterTimer (Func<object?,System.Threading.Tasks.Task> callback, object? state, TimeSpan dueTime, TimeSpan period);
abstract member RegisterTimer : Func<obj, System.Threading.Tasks.Task> * obj * TimeSpan * TimeSpan -> IDisposable
override this.RegisterTimer : Func<obj, System.Threading.Tasks.Task> * obj * TimeSpan * TimeSpan -> IDisposable
member this.RegisterTimer : Func<obj, System.Threading.Tasks.Task> * obj * TimeSpan * TimeSpan -> IDisposable
[<System.Obsolete("Use 'this.RegisterGrainTimer(callback, state, new() { DueTime = dueTime, Period = period, Interleave = true })' instead.")>]
member this.RegisterTimer : Func<obj, System.Threading.Tasks.Task> * obj * TimeSpan * TimeSpan -> IDisposable
Protected Overridable Function RegisterTimer (asyncCallback As Func(Of Object, Task), state As Object, dueTime As TimeSpan, period As TimeSpan) As IDisposable
Protected Function RegisterTimer (asyncCallback As Func(Of Object, Task), state As Object, dueTime As TimeSpan, period As TimeSpan) As IDisposable
Protected Function RegisterTimer (callback As Func(Of Object, Task), state As Object, dueTime As TimeSpan, period As TimeSpan) As IDisposable

パラメーター

asyncCallbackcallback
Func<Object,Task>

タイマー ティック時に呼び出されるコールバック関数。

state
Object

callbackを呼び出すときに引数として渡される State オブジェクト。

dueTime
TimeSpan

最初のタイマー ティックの期限。

period
TimeSpan

後続のタイマー ティックの期間。

戻り値

このタイマーのハンドル。

属性

注釈

このタイマーは、現在のグレインが非アクティブ化されるのを防ぐものではありません。 グレインが非アクティブ化されている場合、タイマーは破棄されます。

コールバックから返されたタスクが解決されるまで、次のタイマー ティックはスケジュールされません。 つまり、タイマー コールバックがターンをインターリーブすることはありません。

タイマーは、この呼び出しから返されたタイマー ハンドルで Dispose メソッドを呼び出すことによって、いつでも停止できます。

コールバックから返されたタスクによってスローまたはエラーが発生した例外はすべてログに記録されますが、次のタイマー ティックがキューに登録されるのを防ぐものではありません。

適用対象

こちらもご覧ください