【问题标题】:EventAggregator with MultiThreads具有多线程的 EventAggregator
【发布时间】:2011-09-03 05:51:11
【问题描述】:

IEventAggregator 有点问题,让我解释一下

public class doSomething
{
    public doSomething()
    {
        Action<AddEvent> GetAddSolution = s => this.Add(s.a, s.b);
        IEventAggregator.GetEvent<AddEvent>().Subscribe(GetAddSolution);
    }

    public void Add(int a, int b)
    {
        IEventAggregator.GetEvent<AddSolutionEvent>().Publish(new AddSolutionEventArgs(a + b));
    }
}

上面是一个演示服务,在我的情况下它是一个长时间运行的服务,现在如果我有多个线程使用 EventAggrigator 调用 Add(a,b),则发布请求的最后一个线程会获得所有响应

如何向发布请求事件的线程返回响应。

请提供指导。

在此先感谢您。

【问题讨论】:

    标签: c# .net windows winforms events


    【解决方案1】:

    我自己得到了答案,很简单,使用eventaggregator 中的事件过滤器。过滤器委托过滤事件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-10-06
      • 2013-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多