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
callbackgeç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.