gpt4 book ai didi

c# - 监听消息队列

转载 作者:行者123 更新时间:2023-11-30 23:11:09 25 4
gpt4 key购买 nike

<分区>

我正在尝试创建一个控制台应用程序来监听本地计算机上的消息队列。到目前为止,这是我的代码..

static void Main(string[] args)
{
var _queue = new MessageQueue(@".\private$\testing");
_queue.Formatter = new XmlMessageFormatter(new Type[] {
typeof(string) });

_queue.ReceiveCompleted += new
ReceiveCompletedEventHandler(queue_ReceiveCompleted);
_queue.BeginReceive();

}
private static void queue_ReceiveCompleted(object source,
ReceiveCompletedEventArgs e)
{
MessageQueue mq = (MessageQueue)source;
Message msg = mq.EndReceive(e.AsyncResult);
Console.WriteLine(msg.Body.ToString());
mq.BeginReceive();
}

我的问题是这样的..首先程序退出

        Console.WriteLine(msg.Body.ToString());

而且我没有收到队列中的其他消息。

所以我在没有 Console.WriteLine 的情况下尝试查看是否所有消息都从队列中读取

private static void queue_ReceiveCompleted(object source, 
ReceiveCompletedEventArgs e)
{
MessageQueue mq = (MessageQueue)source;
Message msg = mq.EndReceive(e.AsyncResult);
mq.BeginReceive();
}

但结果有时会不一致,有时会读取 1 条消息,有时会读取 4 条消息,有时会全部读取。

这是怎么回事,我做错了什么吗?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com