zoukankan      html  css  js  c++  java
  • 5,EasyNetQ-Send Receive

    而发布/订阅和请求/响应模式是位置透明的,因为您不需要指定消息的消费者所在的位置,发送/接收模式专门用于通过命名队列进行通信。 它也不会对可以通过队列发送的消息的类型做任何假设。 这意味着您可以通过同一个队列发送不同类型的消息。

    要发送消息,请使用IBus上的发送方法,指定要发送消息的队列的名称和消息本身:

    bus.Send("my.queue", new MyMessage{ Text = "Hello Widgets!" });

    要为特定消息类型设置消息接收器,请使用IBus上的Receive方法:

    bus.Receive<MyMessage>("my.queue", message => Console.WriteLine("MyMessage: {0}", message.Text));

    您可以通过使用采取Action <IReceiveRegistration>的接收重载来为同一队列上的不同消息类型设置多个接收器,例如:

    bus.Receive("my.queue", x => x
        .Add<MyMessage>(message => deliveredMyMessage = message)
        .Add<MyOtherMessage>(message => deliveredMyOtherMessage = message));

    如果消息到达不具有匹配接收者的接收队列,则EasyNetQ将将消息写入到EasyNetQ错误队列,其中有一个异常,称为“找不到消息类型<message type>”的处理程序。

  • 相关阅读:
    一条SQL的执行流程
    LinkedList源码解析
    MinorGC前检查
    AbstractList源码分析
    JVM常用命令
    CountDownLatch源码解析
    ReentrantLock源码解析
    HTTPS简单介绍
    工厂方法模式
    观察者模式
  • 原文地址:https://www.cnblogs.com/zd1994/p/7169042.html
Copyright © 2011-2022 走看看