TimeProvider.CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
Parameter
- callback
- TimerCallback
Delegasi yang mewakili metode yang akan dijalankan saat timer diaktifkan. Metode yang ditentukan untuk panggilan balik harus masuk kembali, karena dapat dipanggil secara bersamaan pada dua utas jika timer diaktifkan lagi sebelum atau saat panggilan balik sebelumnya masih ditangani.
- state
- Object
Objek yang akan diteruskan ke callback
. Ini mungkin null.
- dueTime
- TimeSpan
Jumlah waktu penundaan sebelum callback
dipanggil. Tentukan InfiniteTimeSpan untuk mencegah timer dimulai. Tentukan Zero untuk segera memulai timer.
- period
- TimeSpan
Interval waktu antara pemanggilan callback
. Tentukan InfiniteTimeSpan untuk menonaktifkan sinyal berkala.
Mengembalikan
Instans ITimer yang baru dibuat.
Pengecualian
callback
null.
Jumlah milidetik dalam nilai dueTime
atau period
negatif dan tidak sama dengan Infinite, atau lebih besar dari MaxValue.
Keterangan
Delegasi yang ditentukan oleh parameter panggilan balik dipanggil sekali setelah dueTime
berlalu, dan setelahnya setiap kali interval waktu period
berlalu.
Jika dueTime
nol, panggilan balik segera dipanggil. Jika dueTime
-1 milidetik, callback
tidak dipanggil; timer dinonaktifkan, tetapi dapat diaktifkan kembali dengan memanggil metode Change(TimeSpan, TimeSpan).
Jika period
0 atau -1 milidetik dan dueTime
positif, callback
dipanggil sekali; perilaku berkala timer dinonaktifkan, tetapi dapat diaktifkan kembali menggunakan metode Change(TimeSpan, TimeSpan).
Instans ITimer pengembalian akan di-root secara implisit saat timer masih dijadwalkan.
CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) menangkap ExecutionContext dan menyimpannya dengan ITimer untuk digunakan dalam memanggil callback
setiap kali dipanggil. Tangkapan itu dapat ditekan dengan SuppressFlow().