https://github.com/xxdark/ssbus
Supersonic, lightweight event bus
https://github.com/xxdark/ssbus
bus event eventbus java lightweight
Last synced: 6 months ago
JSON representation
Supersonic, lightweight event bus
- Host: GitHub
- URL: https://github.com/xxdark/ssbus
- Owner: xxDark
- License: mit
- Created: 2021-05-19T18:17:22.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-05-22T15:42:16.000Z (over 4 years ago)
- Last Synced: 2025-03-29T09:41:39.320Z (7 months ago)
- Topics: bus, event, eventbus, java, lightweight
- Language: Java
- Homepage:
- Size: 85.9 KB
- Stars: 35
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ssbus - Supersonic, lightweight event bus
Example usage:
```Java
public class HelloBusTest {private static final int N = Integer.MAX_VALUE;
public static void main(String[] args) {
Bus bus = new Bus<>(Event.class);
bus.register(
e -> {
e.message = "Hello from lambdas!";
},
100);
bus.register(EventListener.class);
long now = System.currentTimeMillis();
for (int i = 0; i < N; i++) {
Event e = new Event("Hello, World!");
bus.unsafeFireAndForget(e);
}
System.out.println(System.currentTimeMillis() - now);
}public static final class EventListener {
@Listener
public static void onEvent(Event e) {
e.message = "Hello from hand-crafted classes!";
}
}public static final class Event {
String message;public Event(String message) {
this.message = message;
}
}
}
```**TODO**:
* **JMH Benchmarks**
* **Java 9+ support**