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á má být spuštěna při spuštění časovače. Metoda by měla být znovu zaváděna, protože může být vyvolána současně na dvou vláknech, pokud časovač znovu aktivuje, zatímco předchozí zpětné volání je stále zpracovávána.
- state
- Object
Objekt, který se má předat objektu callback
. Může to být null
.
- dueTime
- TimeSpan
Je vyvolána doba, po kterou se má zpoždění callback
provést. Zadáním InfiniteTimeSpan zabráníte spuštění časovače. Zadejte Zero , aby se časovač spustil okamžitě.
- period
- TimeSpan
Časový interval mezi voláními metody callback
. Zadáním zakážete InfiniteTimeSpan pravidelnou signalizaci.
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á se Infinitenebo je větší než Int32.MaxValue.
Poznámky
Delegát určený parametrem zpětného volání se vyvolá jednou po dueTime
uplynutí a potom pokaždé, když period
uplynou časový interval.
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
je vyvolána jednou; periodické chování časovače je zakázáno, ale lze jej znovu povolit pomocí Change(TimeSpan, TimeSpan) metody .
ITimer Vrácená instance je implicitně rootována, zatímco časovač je stále naplánovaný.
CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) zachytí ExecutionContext a uloží, že se s ITimer pro použití při vyvolání callback
pokaždé, když je volána. Toto zachytávání lze potlačit pomocí SuppressFlow().
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro