我正在尝试制作一个基本的线程管理器。您可能已经看到了我之前提出的一些错误代码的问题之一,而我仍在处理该代码!但是我被卡住了,因为我希望能够调用函数 GetExitCodeThread(HANDLE, LPDWORD),但是我在实现这个时遇到了麻烦。我遇到的第一个问题我想我知道我需要做什么,但我不知道如何实现它。我最初是在安全属性设置为 NULL 的情况下调用 CreateThread,从外观上看,我需要将其设置为 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 库的任何建议?