mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-10-13 00:15:24 +00:00
perf[event]: remove unnecessary code and doc
This commit is contained in:
1 parent
c5e5b0b04a
commit
44fffabad1
5 files changed
+11
-21
No files matched your search
@@ -89,6 +89,7 @@ public abstract class EventBus {
|
||||
return thread;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理事件
|
||||
*/
|
||||
@@ -96,10 +97,9 @@ public abstract class EventBus {
|
||||
syncSubmit(event);
|
||||
asyncSubmit(event);
|
||||
}
|
||||
|
||||
/**
|
||||
* 同步抛出一个事件,会在当前线程中运行(只有同步观察者会处理事件)
|
||||
*
|
||||
* @param event 需要抛出的事件
|
||||
*/
|
||||
public static void syncSubmit(IEvent event) {
|
||||
var list = receiverMapSync.get(event.getClass());
|
||||
@@ -112,8 +112,6 @@ public abstract class EventBus {
|
||||
|
||||
/**
|
||||
* 异步抛出一个事件,事件不在同一个线程中处理(只有异步观察者会处理事件)
|
||||
*
|
||||
* @param event 需要抛出的事件
|
||||
*/
|
||||
public static void asyncSubmit(IEvent event) {
|
||||
var list = receiverMapAsync.get(event.getClass());
|
||||
@@ -130,9 +128,6 @@ public abstract class EventBus {
|
||||
|
||||
/**
|
||||
* 用指定线程执行
|
||||
*
|
||||
* @param hashcode
|
||||
* @return
|
||||
*/
|
||||
public static void execute(int hashcode, Runnable runnable) {
|
||||
executors[Math.abs(hashcode % EXECUTORS_SIZE)].execute(SafeRunnable.valueOf(runnable));
|
||||
@@ -159,12 +154,10 @@ public abstract class EventBus {
|
||||
/**
|
||||
* 注册事件及其对应同异步观察者
|
||||
*/
|
||||
public static void registerEventReceiver(Class<? extends IEvent> eventType, IEventReceiver receiver,boolean asyncFlag) {
|
||||
if(asyncFlag==true) {
|
||||
public static void registerEventReceiver(Class<? extends IEvent> eventType, IEventReceiver receiver, boolean asyncFlag) {
|
||||
if (asyncFlag) {
|
||||
receiverMapAsync.computeIfAbsent(eventType, it -> new LinkedList<>()).add(receiver);
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
receiverMapSync.computeIfAbsent(eventType, it -> new LinkedList<>()).add(receiver);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,11 +84,9 @@ public class EventRegisterProcessor implements BeanPostProcessor {
|
||||
var enhanceReceiverDefinition = EnhanceUtils.createEventReceiver(receiverDefinition);
|
||||
|
||||
//异步执行标志,false表示同步执行,true表示异步执行
|
||||
boolean asyncFlag=false;
|
||||
if(method.isAnnotationPresent(AsyncExecute.class))
|
||||
asyncFlag=true;
|
||||
var asyncFlag = method.isAnnotationPresent(AsyncExecute.class);
|
||||
// key:class类型 value:观察者 注册Event的receiverMap中
|
||||
EventBus.registerEventReceiver(eventClazz, enhanceReceiverDefinition,asyncFlag);
|
||||
EventBus.registerEventReceiver(eventClazz, enhanceReceiverDefinition, asyncFlag);
|
||||
}
|
||||
} catch (Throwable t) {
|
||||
throw new RuntimeException(t);
|
||||
|
||||
@@ -35,12 +35,8 @@ public class ApplicationTest {
|
||||
// 事件的接受需要在被Spring管理的bean的方法上加上@EventReceiver注解,即可自动注册事件的监听
|
||||
// 参考MyController1中的标准注册方法
|
||||
|
||||
// 抛出同步事件,事件会被当前线程立刻执行,注意日志打印的线程号
|
||||
// EventBus.syncSubmit(MyNoticeEvent.valueOf("同步事件"));
|
||||
//
|
||||
// // 抛出异步事件,事件会被不会立刻执行,注意日志打印的线程号
|
||||
// EventBus.asyncSubmit(MyNoticeEvent.valueOf("异步事件"));
|
||||
EventBus.submit(MyNoticeEvent.valueOf("处理事件"));
|
||||
|
||||
// 睡眠3秒,等待异步事件执行完
|
||||
ThreadUtils.sleep(3000);
|
||||
}
|
||||
|
||||
@@ -27,6 +27,7 @@ public class MyController1 {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(MyController1.class);
|
||||
|
||||
// 事件会被当前线程立刻执行,注意日志打印的线程号
|
||||
@EventReceiver
|
||||
public void onMyNoticeEvent(MyNoticeEvent event) {
|
||||
logger.info("方法1同步执行事件:" + event.getMessage());
|
||||
|
||||
@@ -30,6 +30,8 @@ public class MyController2 {
|
||||
|
||||
/**
|
||||
* 同一个事件可以被重复注册和接受
|
||||
*
|
||||
* 异步事件会被不会立刻执行,注意日志打印的线程号
|
||||
*/
|
||||
@AsyncExecute
|
||||
@EventReceiver
|
||||
|
||||
Reference in new issue
Block a user