0
我们正在使用MDBG附加到IIS工作进程。Mdbg:无法从进程中分离
执行堆栈快照后,我们使用MDBgProcess.Detach()进行分离。
虽然此调用通常需要10-80ms,但偶尔会挂起很长时间,同时也会冻结进程。
这是不可接受的,因为这个过程是一个生产程序。
这里是我们的完整代码:
try
{
proc.AsyncStop();
}
finally
{
// Make sure we are able to detach
try
{
// delete all breakpoints
proc.Breakpoints.DeleteAll();
}
catch (Exception e){}
finally
{
// detach and wait
var waitHandle = proc.Detach();
if (proc.CanExecute())
{
waitHandle.WaitOne();
}
}
}
为什么这可能发生的任何想法,我们能做些什么呢?
最佳, 迈克