375 Commits

Author SHA1 Message Date
mutouyun
621078abbd error: declared ‘static’ in ‘constexpr’ function 2019-01-06 22:42:06 +08:00
mutouyun
224ea72547 use elem_array<ipc::circ::prod_cons> 2019-01-06 22:30:55 +08:00
mutouyun
d67a2076ed remove channel::send_for 2019-01-02 16:37:41 +08:00
mutouyun
eae565dfc8 adjust code 2019-01-02 12:37:18 +08:00
mutouyun
2e26176234 update performence data; add implementation of pool_alloc::clear 2019-01-02 11:58:55 +08:00
mutouyun
e1c3594ca5 using ipc::buffer instead of std::vector<byte_t> 2018-12-31 22:22:54 +08:00
mutouyun
3bea8af992 eliminate potential problems 2018-12-30 21:17:25 +08:00
mutouyun
cba780e9dc make pool_alloc public 2018-12-30 20:34:00 +08:00
mutouyun
319bcdab2f add test for pool_alloc 2018-12-30 16:28:14 +08:00
mutouyun
2941007301 use pool_alloc instead of std::allocator 2018-12-29 22:42:26 +08:00
mutouyun
8c75f8ad84 pool_alloc (TBD) 2018-12-29 18:31:01 +08:00
mutouyun
812d4b3be5 optimize channel performance 2018-12-29 12:12:27 +08:00
mutouyun
02a5920697 try pool_alloc (TBD) 2018-12-29 00:51:31 +08:00
mutouyun
64fc26733e use tls::pointer instead of thread_local 2018-12-28 14:53:34 +08:00
mutouyun
4253c1341c fix some bugs; add performance data to README.md 2018-12-27 20:06:36 +08:00
mutouyun
0ea8e27446 still has some bugs 2018-12-26 18:22:34 +08:00
mutouyun
492d095332 noexcept; adjust memory order 2018-12-24 13:29:20 +08:00
mutouyun
b815a5e50f channel::send will wait for a while & return false if there is no receiver 2018-12-24 12:11:50 +08:00
mutouyun
0eb61b8745 adjust file naming; supplement test cases 2018-12-24 11:56:42 +08:00
mutouyun
e54e9898fc complete all functions of ipc::channel (TODO: ut, benchmark) 2018-12-20 16:31:38 +08:00
mutouyun
70e1ac6865 linux shm should clear itself when all handles pointed it are released 2018-12-20 11:38:40 +08:00
mutouyun
238166bdc1 compile errors 2018-12-19 16:49:30 +08:00
mutouyun
d0b4999af4 re-add ipc::channel (TBD); use hpp instead of cpp to implement channel/route, cause it could visit the internal entities which in ipc.cpp 2018-12-19 16:37:26 +08:00
mutouyun
9cbfb8624f separate def of route into a single cpp (test) 2018-12-19 12:18:53 +08:00
mutouyun
69449c0d4f fix clang-test crash 2018-12-19 11:37:31 +08:00
木头云
4c75b44547
reinterpret_cast may not be used in a constant expression. 2018-12-18 20:30:08 +08:00
mutouyun
69bc556a52 redesigning & refactoring (TBD) 2018-12-18 20:09:31 +08:00
mutouyun
09c3c557ba fix some bugs; use thread_local 2018-12-17 22:44:37 +08:00
mutouyun
cca70b018c improve test cases (has bugs) 2018-12-17 19:07:18 +08:00
mutouyun
d61aa5e5df fix bugs; modify test case; add some helper using & functions 2018-12-17 11:49:13 +08:00
mutouyun
59a9df60c4 add test case 2018-12-17 00:00:13 +08:00
mutouyun
f09378b481 fix some bugs; if __has_include(<pthread.h>), using tls_pointer_linux.cpp; add some channel::send overloads 2018-12-16 21:30:55 +08:00
mutouyun
7982eb94c9 fix some bugs 2018-12-16 10:33:00 +08:00
mutouyun
d6afba1d7a add channel ut 2018-12-15 22:51:40 +08:00
mutouyun
ee2a4e1106 adjust code 2018-12-15 21:47:58 +08:00
mutouyun
44ab812925 rename thread_local_ptr => tls::pointer 2018-12-15 19:30:22 +08:00
mutouyun
0285e2d6e1 mv thread_local_ptr.h to include 2018-12-15 11:57:02 +08:00
mutouyun
0c6a3862d0 use thread_local_ptr instead of thread_local 2018-12-14 23:57:31 +08:00
mutouyun
1e44d6f84e pimpl small object optimization 2018-12-14 18:50:20 +08:00
mutouyun
5ffc820983 use rw_lock for ipc with multi-thread 2018-12-12 23:31:22 +08:00
mutouyun
c40dddcc06 fix bugs; optimize performance 2018-12-12 18:49:10 +08:00
mutouyun
29d25e2226 add benchmark for lock-test 2018-12-12 17:48:02 +08:00
mutouyun
eb2e75d5b7 eliminate warnings 2018-12-11 21:02:24 +08:00
mutouyun
449cf75da9 put rw_lock to a single header file 2018-12-11 20:56:13 +08:00
mutouyun
0a17257388 rw_lock (TBD) 2018-12-11 18:46:04 +08:00
mutouyun
f3a73fcc4d remove std::string from export interface 2018-12-11 17:34:54 +08:00
mutouyun
a3c90d9f8b use nested class in pimpl 2018-12-11 17:08:13 +08:00
mutouyun
85bb05bb52 complete ipc send & recv; prepare ipc::channel; add ipc ut (basic test); add ut suit name; 2018-11-30 17:32:09 +08:00
mutouyun
9540842ba7 add ipc.cpp for implementation of ipc interfaces (TBD); restructure code 2018-11-29 23:05:53 +08:00
mutouyun
21789676e7 move circ_elem_array.h to include dir 2018-11-27 20:50:40 +08:00
zhangyi
c7f49fad5a cross-platform 2018-11-27 11:41:08 +08:00
mutouyun
da25b7fc81 adjust comment 2018-11-27 10:49:57 +08:00
mutouyun
eefea828f0 not support N:M (prod-cons) 2018-11-27 10:47:23 +08:00
mutouyun
db35146542 still have bugs 2018-11-26 21:36:19 +08:00
mutouyun
2d86727be1 a little adjustment 2018-11-26 18:35:49 +08:00
mutouyun
e2cdcb24c3 still have bugs 2018-11-26 18:15:07 +08:00
mutouyun
453f93a69e using yield when checks read finished failed; fix bugs 2018-11-26 16:53:41 +08:00
mutouyun
b3b0cc59f8 fix bugs 2018-11-26 15:00:17 +08:00
mutouyun
0222af2221 add test_prod_cons function template; fix some bugs for multi-producers 2018-11-26 11:56:59 +08:00
mutouyun
ff0dbc8e2e add comments 2018-11-23 21:58:49 +08:00
mutouyun
3e7c97d9b6 rename: circ_queue.h => circ_elem_array.h; support N:M (TBD) 2018-11-23 18:35:13 +08:00
mutouyun
6802d12912 preparing for N:M 2018-11-22 21:38:38 +08:00
mutouyun
2f206d677e modify get to take; fix bug 2018-11-22 21:06:15 +08:00
mutouyun
1f50cd6ac3 optimized code 2018-11-22 17:01:20 +08:00
mutouyun
6be8071802 adjust memory order 2018-11-22 16:49:27 +08:00
mutouyun
8dbc667145 adjust memory order 2018-11-22 16:36:35 +08:00
mutouyun
aef0ed035d use cas instead of load & store; modify "commit" to "put" 2018-11-22 15:51:17 +08:00
mutouyun
daae701cec fix bugs 2018-11-22 14:05:39 +08:00
mutouyun
a6ab7bcdac fix some bugs 2018-11-21 23:10:12 +08:00
mutouyun
7718a63b24 print spent time & performance 2018-11-21 21:38:29 +08:00
mutouyun
de39be3c4f fix bugs 2018-11-21 19:03:39 +08:00
mutouyun
19b40e23cb add ut for circ_queue 2018-11-21 15:09:11 +08:00
mutouyun
17375bb32c add circ_queue 2018-11-20 23:04:32 +08:00
mutouyun
5fa9db52bf eliminate warning 2018-11-20 12:22:44 +08:00
mutouyun
050bb02198 first commit for shm. 2018-11-20 11:27:39 +08:00