您创建消息队列的实例并开始异步查看它:
MessageQueue queue = new MessageQueue( @".\PRIVATE$\Queue" );
queue.BeginPeek( TimeSpan.Infinite, null, OnMessageAdded);
Run Code Online (Sandbox Code Playgroud)
当消息添加到队列时,将调用注册的回调。至于您没有解释您真正的问题是什么,我假设您想了解添加到队列中的新消息:
private void OnMessageAdded( IAsyncResult ar )
{
Message peekedMessage = queue.EndPeek(ar);
//Do whatever you want. Raise a new event, process the message, ...
}
Run Code Online (Sandbox Code Playgroud)
消息不会从队列中取出。您可以使用该消息,但它仍保留在队列中。因此,如果您不需要 Message,则可以直接调用queue.EndPeek(ar);而不使用结果。
| 归档时间: |
|
| 查看次数: |
3215 次 |
| 最近记录: |