Fungsi EnterUmsSchedulingMode (winbase.h)

Mengonversi utas panggilan menjadi utas penjadwal mode pengguna (UMS).

Peringatan

Pada Windows 11, penjadwalan mode pengguna tidak didukung. Semua panggilan gagal dengan kesalahan ERROR_NOT_SUPPORTED.

Sintaks

BOOL EnterUmsSchedulingMode(
  [in] PUMS_SCHEDULER_STARTUP_INFO SchedulerStartupInfo
);

Parameter

[in] SchedulerStartupInfo

Penunjuk ke struktur UMS_SCHEDULER_STARTUP_INFO yang menentukan atribut UMS untuk utas, termasuk daftar penyelesaian dan fungsi titik entri UmsSchedulerProc .

Nilai kembali

Jika fungsi berhasil, fungsi mengembalikan nilai bukan nol.

Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

Penjadwal UMS aplikasi membuat satu utas penjadwal UMS untuk setiap prosesor yang akan digunakan untuk menjalankan utas UMS. Penjadwal biasanya mengatur afinitas utas penjadwal untuk satu prosesor, secara efektif mempertahankan prosesor untuk penggunaan utas penjadwal tersebut. Untuk informasi selengkapnya tentang afinitas utas, lihat Beberapa Prosesor.

Ketika utas penjadwal UMS dibuat, sistem memanggil fungsi titik entri UmsSchedulerProc yang ditentukan dengan panggilan fungsi EnterUmsSchedulingMode . Penjadwal aplikasi bertanggung jawab untuk menyelesaikan inisialisasi khusus aplikasi dari utas penjadwal dan memilih utas pekerja UMS untuk dijalankan.

Penjadwal aplikasi memilih utas pekerja UMS untuk dijalankan dengan memanggil ExecuteUmsThread dengan konteks utas UMS utas pekerja. Utas pekerja berjalan sampai menghasilkan kontrol dengan memanggil UmsThreadYield, memblokir, atau mengakhiri. Utas penjadwal kemudian tersedia untuk menjalankan utas pekerja lain.

Utas penjadwal harus terus berjalan sampai semua utas pekerjanya mencapai titik penghentian alami: yaitu, semua utas pekerja telah menghasilkan, memblokir, atau mengakhiri.

Persyaratan

   
Klien minimum yang didukung Windows 7 (hanya 64-bit) [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 R2 [hanya aplikasi desktop]
Target Platform Windows
Header winbase.h (termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll
Set API api-ms-win-core-ums-l1-1-0 (diperkenalkan di Windows 7)

Lihat juga

ExecuteUmsThread

Beberapa Prosesor

UMS_SCHEDULER_STARTUP_INFO

UmsSchedulerProc

Penjadwalan Mode Pengguna