TimeProvider.CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
public:
virtual System::Threading::ITimer ^ CreateTimer(System::Threading::TimerCallback ^ callback, System::Object ^ state, TimeSpan dueTime, TimeSpan period);
public virtual System.Threading.ITimer CreateTimer (System.Threading.TimerCallback callback, object? state, TimeSpan dueTime, TimeSpan period);
abstract member CreateTimer : System.Threading.TimerCallback * obj * TimeSpan * TimeSpan -> System.Threading.ITimer
override this.CreateTimer : System.Threading.TimerCallback * obj * TimeSpan * TimeSpan -> System.Threading.ITimer
Public Overridable Function CreateTimer (callback As TimerCallback, state As Object, dueTime As TimeSpan, period As TimeSpan) As ITimer
Parámetros
- callback
- TimerCallback
Delegado que representa un método que se va a ejecutar cuando se activa el temporizador. El método debe ser reentrant, ya que se puede invocar simultáneamente en dos subprocesos si el temporizador se activa de nuevo mientras se sigue controlando una devolución de llamada anterior.
- state
- Object
Objeto que se va a pasar a .callback
Puede ser null
.
- dueTime
- TimeSpan
Cantidad de tiempo que se va a retrasar antes callback
de invocarse. Especifique InfiniteTimeSpan para evitar que se inicie el temporizador. Especifique Zero para iniciar inmediatamente el temporizador.
- period
- TimeSpan
Intervalo de tiempo entre las distintas invocaciones de callback
. Especifique InfiniteTimeSpan para deshabilitar la señalización periódica.
Devoluciones
Instancia de ITimer recién creada.
Excepciones
callback
es null
.
El número de milisegundos en el valor de dueTime
o period
es negativo y no es igual a Infinite, o es mayor que Int32.MaxValue.
Comentarios
El delegado especificado por el parámetro de devolución de llamada se invoca una vez transcurrido dueTime
y, a continuación, cada vez que transcurre el period
intervalo de tiempo.
Si dueTime
es cero, la devolución de llamada se invoca inmediatamente. Si dueTime
es -1 milisegundos, callback
no se invoca; el temporizador está deshabilitado, pero se puede volver a habilitar llamando al Change(TimeSpan, TimeSpan) método .
Si period
es de 0 o -1 milisegundos y dueTime
es positivo, callback
se invoca una vez; el comportamiento periódico del temporizador está deshabilitado, pero se puede volver a habilitar mediante el Change(TimeSpan, TimeSpan) método .
La instancia devuelta ITimer se basa implícitamente mientras el temporizador todavía está programado.
CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) captura los ExecutionContext almacenes y que con para ITimer su uso invocando callback
cada vez que se llama. Esa captura se puede suprimir con SuppressFlow().
Se aplica a
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de