委托一个任务并在完成时得到通知(在C#中)

前端之家收集整理的这篇文章主要介绍了委托一个任务并在完成时得到通知(在C#中)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
从概念上讲,我想完成以下工作,但是遇到麻烦,在C#中正确编写代码
SomeMethod { // Member of AClass{}
    DoSomething;
    Start WorkerMethod() from BClass in another thread;
    DoSomethingElse;
}

然后,当WorkerMethod()完成时,运行如下:

void SomeOtherMethod()  // Also member of AClass{}
{ ... }

任何人都可以举个例子吗?

解决方法

为了确切的目的,将 BackgroundWorker添加到.NET 2.0.

简单来说,你做:

BackgroundWorker worker = new BackgroundWorker();
worker.DoWork += delegate { myBClass.DoHardWork(); }
worker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(SomeOtherMethod);
worker.RunWorkerAsync();

您还可以添加喜欢的消息,如取消和进度报告,如果你想:)

猜你在找的C#相关文章