Fungsi SetInformationJobObject (jobapi2.h)
Mengatur batas untuk objek pekerjaan.
Sintaks
BOOL SetInformationJobObject(
[in] HANDLE hJob,
[in] JOBOBJECTINFOCLASS JobObjectInformationClass,
[in] LPVOID lpJobObjectInformation,
[in] DWORD cbJobObjectInformationLength
);
Parameter
[in] hJob
Handel untuk pekerjaan yang batasnya sedang ditetapkan. Fungsi CreateJobObject atau OpenJobObject mengembalikan handel ini. Handel harus memiliki hak akses JOB_OBJECT_SET_ATTRIBUTES . Untuk informasi selengkapnya, lihat Keamanan Objek Pekerjaan dan Hak Akses.
[in] JobObjectInformationClass
Kelas informasi untuk batas yang akan ditetapkan. Parameter ini bisa menjadi salah satu nilai berikut.
Nilai | Makna |
---|---|
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_ASSOCIATE_COMPLETION_PORT . |
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_BASIC_LIMIT_INFORMATION . |
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_BASIC_UI_RESTRICTIONS . |
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_CPU_RATE_CONTROL_INFORMATION .
Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003, dan Windows XP: Bendera ini tidak didukung. Jika Dynamic Fair Share Scheduling (DFSS) diaktifkan, tingkat CPU tidak dapat diatur dan SetInformationJobObject akan gagal dengan kode kesalahan 50 ("Permintaan tidak didukung"). |
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_END_OF_JOB_TIME_INFORMATION . |
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_EXTENDED_LIMIT_INFORMATION . |
|
Parameter lpJobObjectInfo adalah penunjuk ke nilai USHORT yang menentukan daftar grup prosesor untuk menetapkan pekerjaan. Parameter cbJobObjectInfoLength diatur ke ukuran data grup. Bagi nilai ini dengan sizeof(USHORT) untuk menentukan jumlah grup.
Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Bendera ini tidak didukung. |
|
Parameter lpJobObjectInfo adalah penunjuk ke buffer yang berisi array struktur GROUP_AFFINITY yang menentukan afinitas pekerjaan untuk grup prosesor tempat pekerjaan saat ini ditetapkan. Parameter cbJobObjectInfoLength diatur ke ukuran data afinitas grup. Bagi nilai ini dengan sizeof(GROUP_AFFINITY) untuk menentukan jumlah grup.
Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003, dan Windows XP: Bendera ini tidak didukung. |
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_LIMIT_VIOLATION_INFORMATION_2 .
Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Bendera ini tidak didukung. |
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_NET_RATE_CONTROL_INFORMATION .
Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Bendera ini tidak didukung. |
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION .
Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003, dan Windows XP: Bendera ini tidak didukung. |
|
Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION_2 .
Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Bendera ini tidak didukung. |
|
Bendera ini tidak didukung. Aplikasi harus menetapkan batasan keamanan satu per satu untuk setiap proses.
Windows Server 2003 dan Windows XP: Parameter lpJobObjectInfo adalah penunjuk ke struktur JOBOBJECT_SECURITY_LIMIT_INFORMATION . Handel hJob harus memiliki hak akses JOB_OBJECT_SET_SECURITY_ATTRIBUTES yang terkait dengannya. |
[in] lpJobObjectInformation
Batas atau status pekerjaan yang akan ditetapkan untuk pekerjaan tersebut. Format data ini tergantung pada nilai JobObjectInfoClass.
[in] cbJobObjectInformationLength
Ukuran informasi pekerjaan yang ditetapkan, dalam byte.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan bukan nol.
Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.
Keterangan
Gunakan fungsi SetInformationJobObject untuk mengatur beberapa batas dalam satu panggilan. Untuk menetapkan batas satu per satu atau mengubah subset batas, panggil fungsi QueryInformationJobObject untuk mendapatkan batas saat ini, ubah batas ini, lalu panggil SetInformationJobObject.
Anda harus menetapkan batas keamanan satu per satu untuk setiap proses yang terkait dengan objek pekerjaan, daripada mengaturnya untuk objek pekerjaan itu sendiri. Untuk informasi, lihat Keamanan Proses dan Hak Akses.
Windows Server 2003 dan Windows XP: Gunakan fungsi SetInformationJobObject untuk mengatur batas keamanan untuk objek pekerjaan.
Untuk mengkompilasi aplikasi yang menggunakan fungsi ini, tentukan _WIN32_WINNT sebagai 0x0500 atau yang lebih baru. Untuk informasi selengkapnya, lihat Menggunakan Header Windows.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | jobapi2.h (sertakan Windows.h) |
Pustaka | Kernel32.lib |
DLL | Kernel32.dll |
Lihat juga
JOBOBJECT_ASSOCIATE_COMPLETION_PORT
JOBOBJECT_BASIC_LIMIT_INFORMATION
JOBOBJECT_BASIC_UI_RESTRICTIONS
JOBOBJECT_CPU_RATE_CONTROL_INFORMATION
JOBOBJECT_END_OF_JOB_TIME_INFORMATION
JOBOBJECT_EXTENDED_LIMIT_INFORMATION
JOBOBJECT_LIMIT_VIOLATION_INFORMATION
JOBOBJECT_LIMIT_VIOLATION_INFORMATION_2
JOBOBJECT_NET_RATE_CONTROL_INFORMATION
JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION
JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION_2