共用方式為


線程句柄和標識碼

CreateThreadCreateRemoteThread 函式建立新線程時,會傳回線程的句柄。 根據預設,此句柄具有完整的訪問許可權,而且在接受線程句柄的任何函式中都可以使用安全性存取檢查。 子進程可以繼承此句柄,視建立時指定的繼承旗標而定。 DuplicateHandle可以複製句柄,這可讓您建立具有訪問許可權子集的線程句柄。 句柄在關閉之前有效,即使它所代表的線程已經終止也一直有效。

CreateThreadCreateRemoteThread 函式也會傳回可在整個系統中唯一識別線程的標識符。 線程可以使用 GetCurrentThreadId 函式來取得自己的線程標識符。 從線程建立到線程終止為止,標識碼都是有效的。 請注意,任何線程標識碼都不會是0。

如果您有線程標識碼,您可以呼叫 OpenThread 函式來取得線程句柄。 OpenThread 可讓您指定句柄的訪問許可權,以及是否可以繼承它。

線程可以使用 GetCurrentThread 函式,將 虛擬句柄擷取至自己的線程物件。 此虛擬句柄僅適用於呼叫進程;無法繼承或複製它供其他進程使用。 若要取得線程的實際句柄,指定虛擬句柄,請使用 DuplicateHandle 函式。

若要列舉進程的線程,請使用 Thread32FirstThread32Next 函式。