我在 WPF 应用程序中有这个简单的代码:
ThreadStart start = delegate()
{
Thread.Sleep(5000);
Console.WriteLine("HEY!");
Dispatcher.CurrentDispatcher.BeginInvoke(
DispatcherPriority.Normal,
new Action(
delegate()
{
Console.WriteLine("Inside invoke?!");
}
)
);
};
new Thread(start).Start();
HEY!
片刻后被打印出来,并且应用程序没有像使用线程所期望的那样被阻塞,但是,为什么我从来没有看到Inside invoke?!
?我还尝试了不同的优先级,例如Send
,我认为这是最高优先级。
我也尝试过在里面设置断点,但它从未停止过。