问题描述
我们实现了一个支持调试器工具提示的自定义调试引擎.
我们的实现遵循此处提出的模式:
http://msdn.microsoft.com/en-us/library/bb162318 (v = vs.100).aspx
we implemented a custom debug engine that supports debugger tooltips.
Our implementation follows the proposed pattern from here:
http://msdn.microsoft.com/en-us/library/bb162318(v=vs.100).aspx
它工作得很好,但是我们遇到了性能问题
因为我们的IDebugExpression2的实现是通过
调用的EvaluateSync而不是EvaluateAsync.
It works perfectly fine, however we run into performance problems
because our implementation of IDebugExpression2 is called with
EvaluateSync instead of EvaluateAsync.
那么需要进行哪些更改才能使用EvaluateAsync调用它?
So what needs to be changed so that it is called with EvaluateAsync?
其他信息:
1.我发现在即时窗口"中输入内容时,
调用EvaluateAsync.但是我们希望它也被称为
调试器工具提示.
2.我们需要使用EvaluateAsync进行调用,因为我们的调试引擎是
实际上是一个远程调试器,我们负担不起评估多个
彼此固定的工具提示.我们想捆绑评估
请求,将它们发送到后端系统,并通过
通知结果发送IDebugExpressionEvaluationCompleteEvent2.
3.我们的自定义调试引擎在创建的隔离外壳中运行
使用Visual Studio 2010 SP1.
Additional information:
1. I found out that when entering something in the "Immediate Window",
EvaluateAsync is called. However we want it to be called also for
debugger tooltips.
2. We need to be called with EvaluateAsync as our debug engine is
actually a remote debugger and we cannot afford to evaluate several
pinned tooltips one after another. We would like to bundle the evaluation
requests, send them to a backend system and notify the result by
sending IDebugExpressionEvaluationCompleteEvent2.
3. Our custom debug engine runs within an Isolated Shell created
with Visual Studio 2010 SP1.
感谢和问候,
Bernhard
推荐答案
感谢您在MSDN论坛中发帖.
Thank you for posting in the MSDN Forum.
我对调试引擎不熟悉.我将请一些专家来解决这个问题,看看他们是否可以为您提供帮助.可能会有一些时间延迟,感谢您的耐心等候.
I am not familiar with the debug engine. I will involve some experts into this issue to see whether they can help you out. There might be some time delay, appreciate for your patience.
感谢您的理解和支持.
最好的问候
这篇关于Visual Studio扩展性:IDebugExpression2 :: EvaluateAsync用于调试器工具提示的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!