【发布时间】:2013-04-08 11:20:43
【问题描述】:
假设我有两个队列,其中包含要发送到端点的相似消息类型。其中一个队列(队列 A)具有最高优先级,因此必须始终首先发送其消息。第二个队列(队列 B)中的消息具有较低的优先级,只能在队列 A 为空时发送。我需要编写一些包含这两个队列的代码,并根据上述逻辑发送它们的内容。我假设我应该使用一个新线程来执行此操作,以便在清空队列以及等待新消息到达时系统不会挂起。我想知道,这有什么好的模式吗?我应该使用 C#“队列”类型吗?有什么不该做的建议吗?
【问题讨论】:
-
为什么不使用具有优先级的单个队列,这里有一些建议:stackoverflow.com/questions/4016509/…
-
所有这些实现问题在很大程度上取决于您的技术堆栈。即 Web、桌面、WCF?
标签: c# .net thread-safety fifo