总结问题:在线程外部的函数中监视线程变量的最佳方法是什么?
原始问题:我希望更好地了解使用 Windows 线程时的最佳实践。我知道有更现代的线程方法,但我仅限于使用 CreateThread。当前设置在 CreateThread 调用的函数内包含一个 WaitForSingleObject 函数,该函数更新一些指针。我需要在线程外部访问这些指针。在 WaitForSingleObject 函数中访问数据的最佳实践是什么?使用 LPVOID params 参数将参数传递给函数很简单,但除了线程 ID 和使用全局变量之外似乎没有输出选项。
HANDLE WINAPI CreateThread( __in_opt LPSECURITY_ATTRIBUTES lpThreadAttributes, __in SIZE_T dwStackSize, __in LPTHREAD_START_ROUTINE lpStartAddress, __in_opt LPVOID lpParameter, __in DWORD dwCreationFlags, __out_opt LPDWORD lpThreadId );