Fungsi GetCurrentThread (processthreadsapi.h)

Mengambil handel semu untuk utas panggilan.

Sintaks

HANDLE GetCurrentThread();

Mengembalikan nilai

Nilai yang dikembalikan adalah handel semu untuk utas saat ini.

Keterangan

Handel semu adalah konstanta khusus yang ditafsirkan sebagai handel utas saat ini. Utas panggilan dapat menggunakan handel ini untuk menentukan dirinya sendiri setiap kali handel utas diperlukan. Handel semu tidak diwariskan oleh proses anak.

Handel ini memiliki akses THREAD_ALL_ACCESS langsung ke objek utas. Untuk informasi selengkapnya, lihat Keamanan Utas dan Hak Akses.

Windows Server 2003 dan Windows XP: Handel ini memiliki akses maksimum yang diizinkan oleh pendeskripsi keamanan utas ke token utama proses.

Fungsi tidak dapat digunakan oleh satu utas untuk membuat handel yang dapat digunakan oleh utas lain untuk merujuk ke utas pertama. Handel selalu ditafsirkan sebagai mengacu pada utas yang menggunakannya. Utas dapat membuat handel "nyata" ke dirinya sendiri yang dapat digunakan oleh utas lain, atau diwarisi oleh proses lain, dengan menentukan handel semu sebagai handel sumber dalam panggilan ke fungsi DuplicateHandle .

Handel semu tidak perlu ditutup ketika tidak lagi diperlukan. Memanggil fungsi CloseHandle dengan handel ini tidak berpengaruh. Jika handel pseudo diduplikasi oleh DuplicateHandle, handel duplikat harus ditutup.

Jangan membuat utas saat meniru konteks keamanan. Panggilan akan berhasil, namun utas yang baru dibuat akan mengurangi hak akses ke dirinya sendiri saat memanggil GetCurrentThread. Hak akses yang diberikan utas ini akan berasal dari hak akses yang dimiliki pengguna yang ditiru ke proses. Beberapa hak akses termasuk THREAD_SET_THREAD_TOKEN dan THREAD_GET_CONTEXT mungkin tidak ada, yang menyebabkan kegagalan yang tidak terduga.

Contoh

Misalnya, lihat Memeriksa Akses Klien.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2003 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header processthreadsapi.h (termasuk Windows.h pada Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

CloseHandle

DuplikatHandle

GetCurrentProcess

GetCurrentThreadId

OpenThread

Fungsi Proses dan Utas

Threads

API Vertdll tersedia di enklave VBS