Bagikan melalui


TimeProvider.CreateTimer(TimerCallback, Object, TimeSpan, TimeSpan) Metode

Definisi

Membuat instans ITimer baru, menggunakan nilai TimeSpan untuk mengukur interval waktu.

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().

Berlaku untuk