我知道我可以使用Debugger.IsAttached来检测是否附加了调试器,但我希望能够执行类似的操作
if (Debugger.IsAttached && Debugger.BreakpointIsSet && Debugger.BreakpointHitCount > 0)
timeout *= 100;
someEvent.WaitOne(timeout);
原因是我的一些测试场景涉及其他线程上的活动。在调试器下查看东西自然会扰乱这个过程。我希望我的主测试线程在我在某个其他线程上的断点命中后单步执行时阻塞更长时间,但如果没有附加调试器,或者它是但尚未命中断点,则不会阻塞.
是否可能与上述等效;例如,将 P/Invoke 用于非托管调试 API?