我可以从线程内调用 GetThreadTimes() 吗? [关闭]
Posted
技术标签:
【中文标题】我可以从线程内调用 GetThreadTimes() 吗? [关闭]【英文标题】:Can I call GetThreadTimes() from within the thread? [closed] 【发布时间】:2016-03-04 05:36:45 【问题描述】:这就是我想要做的:
HANDLE myHandle = GetCurrentThread();
GetThreadTimes(myHandle,lpCreationTime,lpExitTime,lpKernelTime,lpUserTime);
但是,这似乎会导致线程崩溃。
是否可以从要测量其时间的线程中调用GetThreadTimes()
?
编辑:我在崩溃后调用 GetLastError() 得到的系统错误代码是错误 183 (ERROR_ALREADY_EXISTS)。
【问题讨论】:
【参考方案1】:是的,当然可以。事实上,任何(永远无效的)线程句柄值都不会导致崩溃。根本原因可能是您传递给函数的无效指针lpCreationTime
、lpExitTime
、lpKernelTime
、lpUserTime
。
【讨论】:
谢谢。根本原因是未分配的指针。以上是关于我可以从线程内调用 GetThreadTimes() 吗? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
在 COM 对象内调用 CoInitializeEx 返回 S_OK