GrainBaseExtensions.RegisterGrainTimer Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, GrainTimerCreationOptions)
Crée un minuteur de grain.
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
Paramètres
- grain
- IGrainBase
Instance de grain.
- callback
- Func<CancellationToken,Task>
Rappel du minuteur, qui sera appelé chaque fois que le minuteur sera dû.
- options
- GrainTimerCreationOptions
Options de création du minuteur.
Retours
Instance IGrainTimer qui représente le minuteur.
Remarques
Les minuteurs de grain ne conservent pas les grains actifs par défaut. La définition de KeepAlive sur true
entraîne l’allongement de la durée de vie de chaque minuteur. Si les cycles du minuteur sont peu fréquents, le grain peut toujours être désactivé en raison de l’inactivité. Lorsqu’un grain est désactivé, tous les minuteurs actifs sont ignorés.
Tant que le Task retourné par le rappel n’est pas résolu, la graduation du minuteur suivante ne sera pas planifiée. Autrement dit, un rappel de minuteur ne sera jamais exécuté simultanément avec lui-même. Si Interleave est défini sur true
, le rappel du minuteur est autorisé à interagir avec d’autres appels de méthode grain et d’autres minuteurs. Si Interleave est défini sur false
, le rappel du minuteur respecte le paramètre de réentrance du grain, tout comme un appel de méthode de grain classique.
Le minuteur peut être arrêté à tout moment en appelant la méthode Dispose()IGrainTimer. La suppression d’un minuteur empêche toute autre graduation du minuteur d’être planifiée.
Le délai d’échéance et la période peuvent être mis à jour en appelant sa méthode Change(TimeSpan, TimeSpan). Chaque fois que le minuteur est mis à jour, la graduation du minuteur suivante sera planifiée en fonction de l’heure d’échéance mise à jour. Les cycles suivants seront planifiés une fois la période mise à jour écoulée. Notez que ce comportement est identique à la méthode Change(TimeSpan, TimeSpan).
Les exceptions levées à partir du rappel sont journalisées, mais n’empêchent pas la graduation du minuteur suivante d’être mise en file d’attente.
S’applique à
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
Paramètres
- grain
- IGrainBase
- options
- GrainTimerCreationOptions
Retours
S’applique à
RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, TimeSpan, TimeSpan)
Crée un minuteur de grain.
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
Paramètres
- grain
- IGrainBase
Instance de grain.
- callback
- Func<CancellationToken,Task>
Rappel du minuteur, qui sera appelé chaque fois que le minuteur sera dû.
- dueTime
- TimeSpan
Une TimeSpan représentant le délai d’appel avant d’appeler la méthode de rappel spécifiée lors de la construction de l'IGrainTimer. Spécifiez InfiniteTimeSpan pour empêcher le démarrage du minuteur. Spécifiez Zero pour démarrer immédiatement le minuteur.
- period
- TimeSpan
Intervalle de temps entre les appels de la méthode de rappel spécifiée lorsque le IGrainTimer a été construit. Spécifiez InfiniteTimeSpan pour désactiver la signalisation périodique.
Retours
Instance IGrainTimer qui représente le minuteur.
S’applique à
RegisterGrainTimer(IGrainBase, Func<Task>, TimeSpan, TimeSpan)
Crée un minuteur de grain.
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
Paramètres
- grain
- IGrainBase
Instance de grain.
- dueTime
- TimeSpan
Une TimeSpan représentant le délai d’appel avant d’appeler la méthode de rappel spécifiée lors de la construction de l'IGrainTimer. Spécifiez InfiniteTimeSpan pour empêcher le démarrage du minuteur. Spécifiez Zero pour démarrer immédiatement le minuteur.
- period
- TimeSpan
Intervalle de temps entre les appels de la méthode de rappel spécifiée lorsque le IGrainTimer a été construit. Spécifiez InfiniteTimeSpan pour désactiver la signalisation périodique.
Retours
Instance IGrainTimer qui représente le minuteur.
Remarques
Les minuteurs de grain ne conservent pas les grains actifs par défaut. La définition de KeepAlive sur true
entraîne l’allongement de la durée de vie de chaque minuteur. Si les cycles du minuteur sont peu fréquents, le grain peut toujours être désactivé en raison de l’inactivité. Lorsqu’un grain est désactivé, tous les minuteurs actifs sont ignorés.
Tant que le Task retourné par le rappel n’est pas résolu, la graduation du minuteur suivante ne sera pas planifiée. Autrement dit, un rappel de minuteur ne sera jamais exécuté simultanément avec lui-même. Si Interleave est défini sur true
, le rappel du minuteur est autorisé à interagir avec d’autres appels de méthode grain et d’autres minuteurs. Si Interleave est défini sur false
, le rappel du minuteur respecte le paramètre de réentrance du grain, tout comme un appel de méthode de grain classique.
Le minuteur peut être arrêté à tout moment en appelant la méthode Dispose()IGrainTimer. La suppression d’un minuteur empêche toute autre graduation du minuteur d’être planifiée.
Le délai d’échéance et la période peuvent être mis à jour en appelant sa méthode Change(TimeSpan, TimeSpan). Chaque fois que le minuteur est mis à jour, la graduation du minuteur suivante sera planifiée en fonction de l’heure d’échéance mise à jour. Les cycles suivants seront planifiés une fois la période mise à jour écoulée. Notez que ce comportement est identique à la méthode Change(TimeSpan, TimeSpan).
Les exceptions levées à partir du rappel sont journalisées, mais n’empêchent pas la graduation du minuteur suivante d’être mise en file d’attente.
S’applique à
RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, GrainTimerCreationOptions)
Crée un minuteur de grain.
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
Paramètres de type
- TState
Type du paramètre state
.
Paramètres
- grain
- IGrainBase
- callback
- Func<TState,CancellationToken,Task>
Rappel du minuteur, qui sera appelé chaque fois que le minuteur sera dû.
- state
- TState
État passé au rappel.
- options
- GrainTimerCreationOptions
Options de création du minuteur.
Retours
Instance IGrainTimer qui représente le minuteur.
Remarques
Les minuteurs de grain ne conservent pas les grains actifs par défaut. La définition de KeepAlive sur true
entraîne l’allongement de la durée de vie de chaque minuteur. Si les cycles du minuteur sont peu fréquents, le grain peut toujours être désactivé en raison de l’inactivité. Lorsqu’un grain est désactivé, tous les minuteurs actifs sont ignorés.
Tant que le Task retourné par le rappel n’est pas résolu, la graduation du minuteur suivante ne sera pas planifiée. Autrement dit, un rappel de minuteur ne sera jamais exécuté simultanément avec lui-même. Si Interleave est défini sur true
, le rappel du minuteur est autorisé à interagir avec d’autres appels de méthode grain et d’autres minuteurs. Si Interleave est défini sur false
, le rappel du minuteur respecte le paramètre de réentrance du grain, tout comme un appel de méthode de grain classique.
Le minuteur peut être arrêté à tout moment en appelant la méthode Dispose()IGrainTimer. La suppression d’un minuteur empêche toute autre graduation du minuteur d’être planifiée.
Le délai d’échéance et la période peuvent être mis à jour en appelant sa méthode Change(TimeSpan, TimeSpan). Chaque fois que le minuteur est mis à jour, la graduation du minuteur suivante sera planifiée en fonction de l’heure d’échéance mise à jour. Les cycles suivants seront planifiés une fois la période mise à jour écoulée. Notez que ce comportement est identique à la méthode Change(TimeSpan, TimeSpan).
Les exceptions levées à partir du rappel sont journalisées, mais n’empêchent pas la graduation du minuteur suivante d’être mise en file d’attente.
S’applique à
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
Paramètres de type
- TState
Type du paramètre state
.
Paramètres
- grain
- IGrainBase
- state
- TState
État passé au rappel.
- options
- GrainTimerCreationOptions
Retours
S’applique à
RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, TimeSpan, TimeSpan)
Crée un minuteur de grain.
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
Paramètres de type
- TState
Type du paramètre state
.
Paramètres
- grain
- IGrainBase
Instance de grain.
- callback
- Func<TState,CancellationToken,Task>
Rappel du minuteur, qui sera appelé chaque fois que le minuteur sera dû.
- state
- TState
État passé au rappel.
- dueTime
- TimeSpan
Une TimeSpan représentant le délai d’appel avant d’appeler la méthode de rappel spécifiée lors de la construction de l'IGrainTimer. Spécifiez InfiniteTimeSpan pour empêcher le démarrage du minuteur. Spécifiez Zero pour démarrer immédiatement le minuteur.
- period
- TimeSpan
Intervalle de temps entre les appels de la méthode de rappel spécifiée lorsque le IGrainTimer a été construit. Spécifiez InfiniteTimeSpan pour désactiver la signalisation périodique.
Retours
Instance IGrainTimer qui représente le minuteur.
S’applique à
RegisterGrainTimer<TState>(IGrainBase, Func<TState,Task>, TState, TimeSpan, TimeSpan)
Crée un minuteur de grain.
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
Paramètres de type
- TState
Type du paramètre state
.
Paramètres
- grain
- IGrainBase
Instance de grain.
- state
- TState
État passé au rappel.
- dueTime
- TimeSpan
Une TimeSpan représentant le délai d’appel avant d’appeler la méthode de rappel spécifiée lors de la construction de l'IGrainTimer. Spécifiez InfiniteTimeSpan pour empêcher le démarrage du minuteur. Spécifiez Zero pour démarrer immédiatement le minuteur.
- period
- TimeSpan
Intervalle de temps entre les appels de la méthode de rappel spécifiée lorsque le IGrainTimer a été construit. Spécifiez InfiniteTimeSpan pour désactiver la signalisation périodique.
Retours
Instance IGrainTimer qui représente le minuteur.