以下是 和 的IMessageProducer
API IMessageQueueClient
:
public interface IMessageProducer : IDisposable
{
void Publish<T>(T messageBody);
void Publish<T>(IMessage<T> message);
}
public interface IMessageQueueClient : IMessageProducer
{
void Publish(string queueName, byte[] messageBytes);
void Notify(string queueName, byte[] messageBytes);
byte[] Get(string queueName, TimeSpan? timeOut);
byte[] GetAsync(string queueName);
string WaitForNotifyOnAny(params string[] channelNames);
}
基本上 aMessageQueueClient
也是a MessageProducer
,但除了 Publish 之外还包含其他细粒度的方法以从队列中获取消息以及发布和订阅任何 MQ 主题。
Publish<T>
消息客户端和生产者上的类型化API 具有相同的行为。