Bagikan melalui


Fungsi CreateDispatcherQueueController (dispatcherqueue.h)

Membuat DispatcherQueueController. Gunakan DispatcherQueueController yang dibuat untuk membuat dan mengelola masa pakai DispatcherQueue untuk menjalankan tugas yang diantrekan dalam urutan prioritas pada utas antrean dispatcher.

Sintaks

HRESULT CreateDispatcherQueueController(
  [in]  DispatcherQueueOptions     options,
  [out] PDISPATCHERQUEUECONTROLLER *dispatcherQueueController
);

Parameter

[in] options

Afinitas threading dan jenis apartemen COM untuk DispatcherQueueController yang dibuat. Lihat keterangan untuk detailnya.

[out] dispatcherQueueController

Pengontrol antrean dispatcher yang dibuat.

PentingDispatcherQueueController adalah objek WinRT.
 

Menampilkan nilai

S_OK untuk sukses; jika tidak, kode kegagalan.

Keterangan

Diperkenalkan dalam Windows 10, versi 1709.

Jika options.threadTypeDQTYPE_THREAD_DEDICATED, maka fungsi ini membuat utas, menginisialisasinya dengan apartemen COM yang ditentukan, dan mengaitkan DispatcherQueue dengan utas tersebut. Perulangan peristiwa antrean dispatcher berjalan pada utas khusus baru hingga antrean dispatcher dimatikan secara eksplisit. Untuk menghindari kebocoran utas dan memori, panggil DispatcherQueueController.ShutdownQueueAsync saat Anda selesai dengan antrean dispatcher.

Jika options.threadTypeDQTYPE_THREAD_CURRENT, maka DispatcherQueue dibuat dan dikaitkan dengan utas saat ini. Kesalahan menghasilkan jika sudah ada DispatcherQueue yang terkait dengan utas saat ini. Utas saat ini harus memompa pesan untuk memungkinkan antrean dispatcher mengirimkan tugas. Sebelum utas saat ini keluar, alur harus memanggil DispatcherQueueController.ShutdownQueueAsync, dan melanjutkan pemompaan pesan hingga IAsyncAction selesai.

Panggilan ini tidak kembali sampai DispatcherQueueController dan utas baru (jika ada) dibuat.

PentingDispatcherQueueController, dan DispatcherQueue terkait, adalah objek WinRT. Lihat dokumentasi mereka untuk detail penggunaan.
 

Persyaratan

   
Target Platform Windows
Header dispatcherqueue.h
Pustaka CoreMessaging.lib
DLL CoreMessaging.dll

Lihat juga

DispatcherQueue

DispatcherQueueController