进程之间的同步

时间:2013-11-10 20:06:11

标签: c# windows-phone-8 thread-safety windows-phone

我正在使用Windows Phone 8,我很好奇我是否可以让我的UI线程等到后台进程完成其工作或发送特殊信号。
我试图用Mutex Class做到这一点,但最大的问题是我无法确定backgroud进程在UI线程之前调用WaitOne() - 如果来自UI线程的WaitOne()更快,那么我可以梦想我的同步。
有没有人知道这个解决方案,或者可以告诉我哪条路可以在哪里学习呢?

2 个答案:

答案 0 :(得分:0)

在@Hans Passant建议之后我对EventWaitHandle做了一些进一步的研究,我找到了nice page。 我在一个过程中创建了:

EventWaitHandle eW = new EventWaitHandle(false, EventResetMode.AutoReset, "Romasz.Event");
eW.WaitOne();

第二名:

EventWaitHandle eW;
bool yes = EventWaitHandle.TryOpenExisting("Romasz.Event", out eW);
if (yes) eW.Set();

效果很好 - 谢谢。

答案 1 :(得分:0)

您可以使用INotifyPropertyChanged和Progressbar

通过其他方法轻松管理此问题 在完成过程时,请将bool的值更改为true,并将值更改为progressbar,您可以轻松地执行该事件,它也可以在MVVM中轻松实现