标签: c# multithreading design-patterns
我有一个Server个修改Data : IData和许多Client个实例对IData事件感兴趣。
Server
Data : IData
Client
IData
我希望Server在单独的线程上运行,并且在修改Data时没有延迟
Data
我希望每个Client运行一个单独的线程,彼此之间具有相同的优先级。
我希望每个Client保留IData次来电的正确顺序。
如何实现这个?
答案 0 :(得分:0)
实施pub/sub模式。
您可以将MemBus用于进程内消息总线。它可以轻松配置并支持同步和异步处理。
您的Server将IData事件推送到总线,订阅同一总线的多个Clients将按照服务器发送的顺序接收消息。可以在单独的线程上调用每个Client实例。
Clients