struktur JOBOBJECT_CPU_RATE_CONTROL_INFORMATION (winnt.h)
Berisi informasi kontrol laju CPU untuk objek pekerjaan. Struktur ini digunakan oleh fungsi SetInformationJobObject dan QueryInformationJobObject dengan kelas informasi JobObjectCpuRateControlInformation .
Sintaks
typedef struct _JOBOBJECT_CPU_RATE_CONTROL_INFORMATION {
DWORD ControlFlags;
union {
DWORD CpuRate;
DWORD Weight;
struct {
WORD MinRate;
WORD MaxRate;
} DUMMYSTRUCTNAME;
} DUMMYUNIONNAME;
} JOBOBJECT_CPU_RATE_CONTROL_INFORMATION, *PJOBOBJECT_CPU_RATE_CONTROL_INFORMATION;
Anggota
ControlFlags
Kebijakan penjadwalan untuk kontrol laju CPU. Anggota ini bisa menjadi salah satu nilai berikut.
DUMMYUNIONNAME
DUMMYUNIONNAME.CpuRate
Menentukan bagian siklus prosesor yang dapat digunakan utas dalam objek pekerjaan selama setiap interval penjadwalan, sebagai jumlah siklus per 10.000 siklus. Jika anggota ControlFlags menentukan JOB_OBJECT_CPU_RATE_WEIGHT_BASED atau JOB_OBJECT_CPU_RATE_CONTROL_MIN_MAX_RATE, anggota ini tidak digunakan.
Atur CpuRate ke persentase kali 100. Misalnya, untuk membiarkan pekerjaan menggunakan 20% dari CPU, atur CpuRate ke 20 kali 100, atau 2.000.
Jangan atur CpuRate ke 0. Jika CpuRate adalah 0, SetInformationJobObject mengembalikan INVALID_ARGS.
DUMMYUNIONNAME.Weight
Jika anggota ControlFlags menentukan JOB_OBJECT_CPU_RATE_WEIGHT_BASED, anggota ini menentukan bobot penjadwalan objek pekerjaan, yang menentukan berbagi waktu prosesor yang diberikan untuk pekerjaan relatif terhadap beban kerja lain pada prosesor.
Anggota ini dapat menjadi nilai dari 1 hingga 9, di mana 1 adalah bagian terkecil dan 9 adalah berbagi terbesar. Defaultnya adalah 5, yang harus digunakan untuk sebagian besar beban kerja.
Jika anggota ControlFlags menentukan JOB_OBJECT_CPU_RATE_CONTROL_MIN_MAX_RATE, anggota ini tidak digunakan.
DUMMYUNIONNAME.DUMMYSTRUCTNAME
DUMMYUNIONNAME.DUMMYSTRUCTNAME.MinRate
Menentukan bagian minimum siklus prosesor yang dapat dicadangkan utas dalam objek pekerjaan selama setiap interval penjadwalan. Tentukan tarif ini sebagai persentase kali 100. Misalnya, untuk menetapkan tingkat minimum 50%, tentukan 50 kali 100, atau 5.000.
Agar tarif minimum berfungsi dengan benar, jumlah tarif minimum untuk semua objek pekerjaan dalam sistem tidak boleh melebihi 10.000, yang setara dengan 100%.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.MaxRate
Menentukan bagian maksimum siklus prosesor yang dapat digunakan utas dalam objek pekerjaan selama setiap interval penjadwalan. Tentukan tarif ini sebagai persentase kali 100. Misalnya, untuk menetapkan tingkat maksimum 50%, tentukan 50 kali 100, atau 5.000.
Setelah pekerjaan mencapai batas ini untuk interval penjadwalan, tidak ada utas yang terkait dengan pekerjaan yang dapat berjalan hingga interval penjadwalan berikutnya.
Keterangan
Anda dapat mengatur kontrol laju CPU untuk beberapa pekerjaan dalam hierarki pekerjaan berlapis. Saat Anda mengatur kontrol laju CPU untuk objek pekerjaan, pengaturan berlaku untuk pekerjaan dan pekerjaan turunannya dalam hierarki. Saat Anda mengatur kontrol laju CPU untuk pekerjaan dalam hierarki berlapis, sistem menghitung kuota yang sesuai sehubungan dengan kontrol laju CPU dari pekerjaan induk langsung untuk pekerjaan tersebut. Dengan kata lain, tarif yang ditetapkan untuk pekerjaan mewakili bagian dari tingkat CPU yang dialokasikan untuk pekerjaan induknya. Jika objek pekerjaan tidak memiliki induk dengan kontrol laju CPU yang diaktifkan dalam rantai pekerjaan induknya, kontrol laju untuk pekerjaan mewakili bagian CPU untuk seluruh sistem.
Kontrol laju CPU tidak dapat digunakan oleh objek pekerjaan dalam aplikasi yang berjalan di bawah Layanan Desktop Jauh (sebelumnya Layanan Terminal) jika Dynamic Fair Share Scheduling (DFSS) berlaku.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 8 [khusus aplikasi desktop] |
Server minimum yang didukung | Windows Server 2012 [hanya aplikasi desktop] |
Header | winnt.h |