批注接口 EventSubscribe


@Documented @Retention(RUNTIME) @Target(METHOD) public @interface EventSubscribe
订阅者注解,将方法标记为事件订阅者(接收事件、处理事件),可配置线程执行器策略与执行优先级,默认是线程安全的。
     订阅者必须且只能有一个参数,用于接收事件源。
     默认是线程安全的,使用的用户线程执行器。
 
example

     public class YourEventBusSubscriber implements EventBusSubscriber {
         @EventSubscribe
         public void userLogin(YourEventMessage message) {
             log.info("event - 玩家[{}]登录", message.getUserId());
         }
     }

     @Data
     public class YourEventMessage implements Serializable {
         final long userId;
         public YourEventMessage(long userId) {
             this.userId = userId;
         }
     }
 
 
从以下版本开始:
21
作者:
渔民小镇
另请参阅:
  • DefaultSubscribeExecutorStrategy
日期:
2023-12-24
  • 可选元素概要

    可选元素
    修饰符和类型
    可选元素
    说明
    int
    订阅者的执行顺序(优先级)
    执行器策略选择
  • 元素详细资料

    • value

      执行器策略选择
           注意,只有在发送异步事件时,该配置才会生效。
       
      默认值:
      userExecutor
    • order

      int order
      订阅者的执行顺序(优先级)
           值越大,执行优先级越高。
      
           想要确保按顺序执行,订阅者需要使用相同的线程执行器。
           比如可以搭配 userExecutor、simpleExecutor 等策略来使用。
           这些策略通过 
      
      引用无效
      EventBusMessage#getThreadIndex()
      来确定所使用线程执行器。
      返回:
      执行顺序
      另请参阅:
      默认值:
      0