TimeProvider.CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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
Parametreler
- callback
- TimerCallback
Zamanlayıcı çalıştırıldığında yürütülecek yöntemi temsil eden bir temsilci. Zamanlayıcı daha önce veya önceki bir geri çağırma işleniyorken yeniden tetiklenirse, iki iş parçacığında aynı anda çağrılabileceğinden geri çağırma için belirtilen yöntem yeniden giriş yapmalıdır.
- state
- Object
callback
geçirilecek nesne. Bu null olabilir.
- dueTime
- TimeSpan
callback
çağrılmadan önce geciktirme süresi. Zamanlayıcının başlatılmasını önlemek için InfiniteTimeSpan belirtin. Zamanlayıcıyı hemen başlatmak için Zero belirtin.
- period
- TimeSpan
callback
çağrıları arasındaki zaman aralığı. Düzenli sinyalleri devre dışı bırakmak için InfiniteTimeSpan belirtin.
Döndürülenler
Yeni oluşturulan ITimer örneği.
Özel durumlar
callback
null.
dueTime
veya period
değerindeki milisaniye sayısı negatiftir ve Infiniteeşit değildir veya MaxValuedeğerinden büyüktür.
Açıklamalar
Geri çağırma parametresi tarafından belirtilen temsilci, dueTime
geçtikten sonra bir kez ve ardından period
zaman aralığı her geçtiğinde çağrılır.
dueTime
sıfırsa, geri çağırma hemen çağrılır.
dueTime
-1 milisaniye ise callback
çağrılmıyor; zamanlayıcı devre dışı bırakılır, ancak Change(TimeSpan, TimeSpan) yöntemi çağrılarak yeniden etkinleştirilebilir.
period
0 veya -1 milisaniye ve dueTime
pozitifse, callback
bir kez çağrılır; zamanlayıcının düzenli davranışı devre dışı bırakılır, ancak Change(TimeSpan, TimeSpan) yöntemi kullanılarak yeniden etkinleştirilebilir.
Süreölçer hala zamanlanmışken dönüş ITimer örneği örtük olarak köklenir.
CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan)
ExecutionContext yakalar ve her çağrıldığında callback
çağırmak için ITimer ile birlikte depolar. Bu yakalama SuppressFlow()ile gizlenebilir.