假设以下代码
private AutoResetEvent m_MethodDone = new AutoResetEvent(false);
private void Method1()
{
// Do something
Method2();
}
private void Method2()
{
// All done
m_MethodDone.Set();
}
private void Method3()
{
}
private void Program()
{
Task t = New Task(() => { // Code In Question
m_MethodDone.WaitOne()
Method3();
});
t.Start();
// Do other things.
}
问题
有没有办法“捕获” CLR 事件,无论是来自我线程中的事件还是循环?
if(SomeRunTimeThing.LastMethodExecuted.Name == "Method2")
Method3();
为什么
我不想在软件的内部编写调用挂钩,这是一个可观察到的问题(嗯,想法来了……)(它实际上观察了自动化类型功能的 UI 调用模式)。