RtlpNtMakeTemporaryKey - VerySleepy 表示这需要很多时间
我正在分析我的一些计算密集型代码,并惊讶地发现函数 RtlpNtMakeTemporaryKey 占用了大量时间。它的模块是ntdll
,源文件是Unknown
。这是一个正在等待我的慢速函数终止的调用还是我可以优化的东西?
I'm profiling some computationally intensive code of mine, and was surprised to see that the function RtlpNtMakeTemporaryKey
takes up a huge chunk of time. It's module is ntdll
and the source file is Unknown
. Is this a call which is waiting for my slow function to terminate or is it something which I can optimize?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您确定有 ntdll 的符号吗?您可能不这样做,并且 RtlpNtMakeTemporaryKey 只是您的调试器可以看到的实际函数或占用大量时间的函数的最接近的导出符号名称。
但是,是的,您应该关注您的代码以及谁/为什么您如此频繁地调用 ntdll。
Are you sure you have symbols for ntdll? It's possible that you don't, and RtlpNtMakeTemporaryKey is just the closet exported symbol name that your debugger can see to the real function or functions that are taking up so much time.
But yeah, you should focus on your code and who/why you're calling into ntdll so much.
这听起来像是 Windows 中的内部函数,因为它位于 ntdll.dll 中。您应该查看到达此函数的调用堆栈,以找出它被如此频繁调用的原因。
This sounds like an internal function in Windows since it is in ntdll.dll. You should look at the call stack that reaches this function to find out why it is being invoked so often.