Commit Graph

369 Commits

Author SHA1 Message Date
nathan
3483205dfd cleaned up unitests 2016-01-25 15:07:57 +01:00
nathan
d84098fe9d Merge branch 'single_writer_wip_subscriptions' into single_writer
# Conflicts:
#	src/dorkbox/util/messagebus/subscription/Subscription.java
#	src/dorkbox/util/messagebus/subscription/SubscriptionManager.java
2016-01-25 15:00:56 +01:00
nathan
992b8f2f3b Supersubs now working w/ unit tests. wip multimessages. performancetest still fails w/ current subscription add() method 2016-01-25 14:56:54 +01:00
nathan
b4247731db WIP, getting subscriptions to use the single writer principle 2016-01-25 12:24:41 +01:00
nathan
61f7cd26b1 GREAT performance. Added IdentityMap to ReflectionUtils annotations collector 2016-01-20 15:14:06 +01:00
nathan
61756547bb Code cleanup 2016-01-20 13:48:47 +01:00
nathan
3674d6031b WIP single writer principle. have subsPerMessage + subsPerSuperMessage working 2016-01-20 13:35:33 +01:00
nathan
9e06d16855 WIP - getting system to arrays instead of lists 2016-01-20 01:56:39 +01:00
nathan
0401a6a164 WIP - single writer principle. Disruptor added, WIP optimizing data structures for hit on writer, instead of reader 2016-01-19 00:12:10 +01:00
nathan
e8efa4390b polish and reasonable performance. 2016-01-15 23:35:20 +01:00
nathan
eae63b3f8a GREAT performance with Disruptor values tweaked. WIP getting all collections lock-free 2016-01-15 02:26:23 +01:00
nathan
0ed9b1b243 Fixed issues with varity argumuent subscriptions, cleaned up model, removed "FirstArg" publisher (didn't make any sense. Publication should always use all arguments) 2016-01-14 15:08:49 +01:00
nathan
be960b6913 Fixed up FirstArgSubscriber, code polish 2016-01-14 00:51:46 +01:00
nathan
1863df8db4 Lessen the stack size 2016-01-13 23:40:53 +01:00
nathan
4a42f395a6 Added disruptor - AWESOME fast in speed tests. Has problems because of pub/sub lock contention when used in MessageBus 2016-01-13 18:05:43 +01:00
nathan
712b0d8265 Code polish 2016-01-13 10:56:17 +01:00
nathan
69701fbbd9 Merge remote-tracking branch 'origin/master' 2015-11-02 02:38:40 +01:00
nathan
240b8640d0 Moved multinode back to public (necessary for unit tests) 2015-10-30 22:46:51 +01:00
nathan
4187a42e86 Moved multinode back to public (necessary for unit tests) 2015-10-30 22:29:25 +01:00
nathan
e854c247ad Updated license info 2015-10-30 13:41:28 +01:00
nathan
57cd06d164 Updated license info. Updated jctools MPMC array queue 2015-10-30 13:31:13 +01:00
nathan
68dc22b736 fixed generics 2015-07-22 10:37:40 +02:00
nathan
4e75e28802 Updated to use non-deprecated junit. added missing generic parameters 2015-07-07 00:36:23 +02:00
nathan
d57dca4226 Updated license, updated utilities (BigEndian byte utils) 2015-06-29 15:08:32 +02:00
nathan
5432dc3085 Added dist/lib jars 2015-06-29 01:46:43 +02:00
nathan
c8cfcb3ae1 Added license info 2015-06-29 01:46:30 +02:00
nathan
8f312a8012 Added intellij support. Compiled as java6, supports java8 ConcurrentHashMap 2015-06-28 00:16:38 +02:00
nathan
894da4c980 Changed visibility of queue. Made node items private 2015-06-26 20:59:43 +02:00
nathan
a1922ff788 Code polish and refactor to support multiple types of publishing and subscribing 2015-06-20 01:53:32 +02:00
nathan
a790368ec4 Code polish and refactor to support multiple types of publishing and subscribing 2015-06-20 01:05:01 +02:00
nathan
2c2801e54f cleaned up source, comments. Extracted ErrorHandler. WIP java version adapter 2015-06-16 11:36:57 +02:00
nathan
fa0319cdc3 Renamed to MessageBus. Code cleanup 2015-06-08 00:29:17 +02:00
nathan
31e9fe84b3 Renamed to MessageBus. Code cleanup 2015-06-08 00:29:10 +02:00
nathan
2247b5f24c Change bus default mode to better one. Fixed varArgPossibility to reflect actual state 2015-06-07 23:36:29 +02:00
nathan
1287612685 Added back var arg 2/3, vararg super 2/3. Added unit test for this. 2015-06-07 23:25:14 +02:00
nathan
56728b327d WIP getting 2/3 super vararg implemented 2015-06-07 00:55:32 +02:00
nathan
cc9cb15440 Added publish array. WIP 2015-06-06 21:29:30 +02:00
nathan
4bd2b24f25 Implemented 2/3 arg pub. 2015-06-06 20:00:11 +02:00
nathan
67c6403355 More optimizations 2015-06-06 15:10:57 +02:00
nathan
3acd8f934f Really good pub throughput/latency. sub/unsub need work 2015-06-05 15:53:22 +02:00
nathan
bd25415dff Really fast, not sure why exactly 2015-06-05 12:41:47 +02:00
nathan
3db34cc7dd removed some more code branches. pre-wip on subscribe (it's really slow) 2015-06-05 10:47:34 +02:00
nathan
30617a2b57 WIP var-arg/super-var-arg implementation 2015-06-03 14:47:12 +02:00
nathan
67639ffb48 cleaned up comments 2015-06-03 11:28:48 +02:00
nathan
d1f23220e5 Cleaned up locks 2015-06-03 11:27:30 +02:00
nathan
e70adb2486 java 8 stamped lock is faster than reentrantlock. WIP caches 2015-06-02 23:00:26 +02:00
nathan
ab32656ce1 Good performance 2015-05-31 22:15:55 +02:00
nathan
bbade8aa72 WIP, converting parts to array for sub/unsub 2015-05-30 03:27:33 +02:00
nathan
df14de3252 WIP, getting better results 2015-05-28 03:36:26 +02:00
nathan
a5a4cc861c moved error handling outside subscription. WIP stampedLocks for main iteration. Change to stampedLock for sub/unsub 2015-05-21 01:53:05 +02:00