接上例,这次讲讲如何接收消息。
消息服务有发送消息,当然就得有地方接收他,或者说是消费他才行的。
先给个简单的示例:
注意:
queue.Receive();方法是同步执行的,如果队列中没有消息,就会等待队列中有消息时再执行。
另外:
1.关于消息的遍历:
我们完全可以通过程序对消息队列进行枚举:
例如:
for(Message msg in queue){
......
}
2.关于消息的异步读取,方法如下:
下面再来看一个示例,虽然可能提供的只是代码片段,但是应该能够简单的展示了Windows中消息队列的作用。
先看输出的数据类型:
消息发送端:
消息接收端:
说明:
Message Queuing技术不仅提供了异步通信,还提供了断开连接通讯的能力。
如果接触过Java中JMS的朋友应该很容易理解(Java中可以通用诸如ActiveMQ服务器对Java消息队列提供支持)。