【发布时间】:2016-06-15 14:43:57
【问题描述】:
我需要我的 WPF exe 在队列启动后立即开始监视它,然后在消息进入时对其进行响应。
我现在的方式是:
public partial class App
{
readonly BackgroundWorker _worker = new BackgroundWorker();
protected override void OnStartup(StartupEventArgs e)
{
_worker.DoWork += worker_DoWork;
_worker.RunWorkerCompleted += worker_RunWorkerCompleted;
_worker.RunWorkerAsync();
}
void worker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
_worker.DoWork += worker_DoWork;
_worker.RunWorkerAsync();
}
static void worker_DoWork(object sender, DoWorkEventArgs e)
{
//do work
}
显然,这是非常可悲的 IMO。
另外,我不喜欢在线程内部使用while(true) 以使其无限期运行的方法..
【问题讨论】:
标签: wpf multithreading msmq