GrainBaseExtensions.RegisterGrainTimer Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
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
- 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
TimeSpan, представляющее время задержки перед вызовом метода обратного вызова, указанного при создании IGrainTimer. Укажите 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
TimeSpan, представляющее время задержки перед вызовом метода обратного вызова, указанного при создании IGrainTimer. Укажите 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
- 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
TimeSpan, представляющее время задержки перед вызовом метода обратного вызова, указанного при создании IGrainTimer. Укажите 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
TimeSpan, представляющее время задержки перед вызовом метода обратного вызова, указанного при создании IGrainTimer. Укажите InfiniteTimeSpan, чтобы предотвратить запуск таймера. Укажите Zero, чтобы немедленно запустить таймер.
- period
- TimeSpan
Интервал времени между вызовами метода обратного вызова, указанного при создании IGrainTimer. Укажите InfiniteTimeSpan для отключения периодического сигнала.
Возвращаемое значение
Экземпляр IGrainTimer, представляющий таймер.