我想做一個基本的線程管理器。您可能看到過我之前提過的一個問題,我提出了一些不好的代碼,而且我仍在編寫該代碼!但我卡住了,因爲我想能夠調用函數GetExitCodeThread(HANDLE,LPDWORD),但是我在實現這個時遇到了問題。我遇到的第一個問題是我想到我需要做什麼,但我不知道如何實現它。我最初調用的CreateThread的安全屬性設置爲NULL,並從它的外觀我需要將其設置爲THREAD_QUERY_INFORMATION,但我不知道如何填充它想要的LPSECURITY_ATTRIBUTES結構。從MSDN結構是:微軟主題,設置安全和訪問權限
typedef struct _SECURITY_ATTRIBUTES {
DWORD nLength;
LPVOID lpSecurityDescriptor;
BOOL bInheritHandle;
} SECURITY_ATTRIBUTES, *PSECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES;
但我不知道怎麼填,隨着THREAD_QUERY_INFORMATION,什麼我填與結構的其他部分我不明白。我想如果我設置創建線程的安全屬性,我應該能夠調用GetExitCodeThread,然後我的代碼應該工作...有沒有人有任何示例代碼設置安全屬性,同時創建一個線程我可以看和參考?和任何關於更好地理解Windows庫的建議?
我想出瞭如何使這項工作,我其實並不需要security_attributes結構。不過,我仍然想要了解更多關於如何使用它的信息,而且我對msdn的網站描述感到困惑。所以澄清會很好! –
請使用'_beginthreadex'而不是'CreateThread'。 – paddy
爲什麼使用_beginthreadex代替CreateThread更好? –