TimeProvider.CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
Parametry
- callback
- TimerCallback
Delegát představující metodu, která se má spustit při spuštění časovače. Metoda zadaná pro zpětné volání by měla být znovu zadána, protože může být vyvolána současně na dvou vláknech, pokud časovač znovu spustí před nebo během předchozího zpětného volání je stále zpracován.
- state
- Object
Objekt, který se má předat do objektu callback. Může to být null.
- dueTime
- TimeSpan
Doba, po kterou se má zpoždění callback před vyvoláním. Zadejte InfiniteTimeSpan , aby se časovač nespouští. Zadejte Zero , aby se časovač spustil okamžitě.
- period
- TimeSpan
Časový interval mezi vyvoláním funkce callback. Určete InfiniteTimeSpan , že chcete zakázat pravidelné signály.
Návraty
Nově vytvořená ITimer instance.
Výjimky
callback je null.
Počet milisekund v hodnotě dueTime nebo period je záporný a nerovná Infinitese nebo je větší než MaxValue.
Poznámky
Delegát určený parametrem zpětného volání se vyvolá jednou po dueTime uplynutí a po každém uplynutí časového intervalu period .
Pokud dueTime je nula, zpětné volání se vyvolá okamžitě. Pokud dueTime je -1 milisekund, callback není vyvolána; časovač je zakázán, ale lze jej znovu povolit voláním Change(TimeSpan, TimeSpan) metody.
Pokud period je 0 nebo -1 milisekund a dueTime je pozitivní, callback vyvolá se jednou; pravidelné chování časovače je zakázané, ale můžete ho Change(TimeSpan, TimeSpan) znovu povolit pomocí metody.
ITimer Vrácená instance bude implicitně rootována, zatímco časovač je stále naplánovaný.
CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) zachytí ExecutionContext a uloží, které se ITimer používají při vyvolání callback při každém volání. Tento záznam lze potlačit pomocí SuppressFlow().