Commit Graph

344 Commits

Author SHA1 Message Date
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
nathan 4defde737a polish, pre-work for contention 2015-05-20 11:53:57 +02:00
nathan 9a787506ee stamped lock, switched to ConcurrentSet+CLQ 2015-05-20 01:08:12 +02:00
nathan a4924e58be Added concurrentSet based on concurrentMapv8 + concurrentLinkedQueue. WIP. Same performance as before 2015-05-19 13:51:41 +02:00
nathan 964f7ee565 Added collection perftest. code polish 2015-05-19 04:00:41 +02:00
nathan 6668c2ff81 Added default console logger. memory padding tweakes 2015-05-14 15:32:25 +02:00
nathan d0dfafb5a5 Moved queue perf tests into own package. Added SubscriptionUtils helper to clean up code size 2015-05-14 01:57:03 +02:00
nathan 21541639ca added booleanHolder 2015-05-13 23:55:54 +02:00
nathan 47f548b5b2 more things cached, varArgPossibility added 2015-05-13 23:07:21 +02:00
nathan 2b0f614595 Fixed typo in multi2 super vararg subscriptions. Code polish 2015-05-13 20:41:36 +02:00
nathan 060a00f875 Wip cleaning iterators 2015-05-13 20:08:09 +02:00
nathan f746615536 Cleaned up code and benchmarks 2015-05-13 00:58:46 +02:00
nathan 8d8bc1512f WIP - added varArg Multi version for getting subscriptions, ie: int, int, string -> object[] 2015-05-10 17:09:38 +02:00
nathan dd35477346 Added more direct iteration 2015-05-09 15:06:37 +02:00
nathan aaf8e0ddf4 Created backup of MpmcTransferArrayQueue, created/implemented 'multi' version, code polish 2015-05-09 14:38:06 +02:00
nathan 3aa5ca59f6 Cleaned up tests, added Thread interruption back, code polish 2015-05-09 00:09:48 +02:00
nathan 7fa59650a8 WIP, code polish. discovered rare test hang 2015-05-08 17:32:19 +02:00
nathan b967733a63 Added jctools library, cleaned up. Slow performance for 4x4?? 2015-05-08 13:32:56 +02:00
nathan 1a591165a8 WIP - pre-lib for jctools 2015-05-06 20:47:02 +02:00
nathan f96a2f4c19 Improved simpleq, now beats LTQ in concurrent tests 2015-05-04 19:03:50 +02:00
nathan 2705daa073 much better results. almost same as LTQ, but with no heap objects 2015-05-03 22:43:35 +02:00
nathan 8c01959080 WIP, crap multiprocessor performance with simplequeue abstraction, 160k/s 2015-05-03 15:55:26 +02:00
nathan 2e1feacc0e Cleanup old mpmc code 2015-05-03 00:19:29 +02:00
nathan fca3d02652 Tweaked queue to simpler logic. added park/unpark. 6.3m ops/sec 2015-05-03 00:08:54 +02:00
nathan ac4e396f5d renamed queue 2015-05-01 00:40:28 +02:00
nathan 4276f881e8 WIP - got mpmc queue w/ parks + fixed-deadlocking. @ 4.6m ops/sec 2015-04-22 22:47:23 +02:00