mutouyun
|
3344bbf799
|
impl robust mutex & condition (using alephzero's mtx implementation)
|
2021-10-23 19:06:33 +08:00 |
|
mutouyun
|
d946ad0948
|
modify interface of sync.condition
|
2021-10-23 17:27:08 +08:00 |
|
mutouyun
|
4ddc1d0a3d
|
adjust directory paths
|
2021-10-23 17:18:23 +08:00 |
|
木头云
|
74e871e6e4
|
warning: enumeral and non-enumeral type in conditional expression
|
2021-10-14 22:37:22 +08:00 |
|
mutouyun
|
a457a8975f
|
using 'signal' to quit waiting explicitly
|
2021-09-21 13:09:59 +08:00 |
|
mutouyun
|
7a536b6e9c
|
impl quit_waiting
|
2021-09-20 22:18:27 +08:00 |
|
mutouyun
|
b8f5e2ba6f
|
validate close in waiter
|
2021-09-20 22:03:36 +08:00 |
|
mutouyun
|
ed8b1fd608
|
fix some bugs for linux-mutex
|
2021-09-20 20:31:08 +08:00 |
|
mutouyun
|
a9cb81bee9
|
missing file
|
2021-09-20 16:05:35 +08:00 |
|
mutouyun
|
04fda1cc3d
|
use sync to refactor waiter
|
2021-09-20 15:59:44 +08:00 |
|
mutouyun
|
c1ceaa657a
|
实现condition_win
|
2021-09-19 22:26:32 +08:00 |
|
mutouyun
|
0cccdac868
|
merge issue-61; add condition for linux
|
2021-09-19 17:21:39 +08:00 |
|
mutouyun
|
4ca300b3e5
|
Merge branch 'issue-61' into develop
|
2021-09-19 16:29:31 +08:00 |
|
mutouyun
|
be6f16f87f
|
revert some changes
|
2021-09-19 16:29:06 +08:00 |
|
mutouyun
|
843770442c
|
避免wait_if的counter因为ABA问题导致计数错误
|
2021-09-17 22:25:53 +08:00 |
|
mutouyun
|
91385d727a
|
修正recv中断后counter无法下降的问题;添加新的示例
|
2021-09-17 22:01:34 +08:00 |
|
mutouyun
|
baf645eea1
|
修正 recv timeout 接口cpu占用过高的问题
|
2021-09-16 23:49:01 +08:00 |
|
mutouyun
|
ca9c5d10da
|
ut for sem-linux
|
2021-09-12 22:05:08 +08:00 |
|
mutouyun
|
1994243bec
|
fix: semaphore() noexcept is implicitly deleted
|
2021-09-12 21:58:57 +08:00 |
|
木头云
|
cd4b28380c
|
Update semaphore_linux.h
|
2021-09-12 21:51:08 +08:00 |
|
mutouyun
|
d37a6740ea
|
add ut for sync::semaphore
|
2021-09-12 21:48:22 +08:00 |
|
mutouyun
|
d0e2a4d80c
|
add semaphore for win
|
2021-09-12 15:59:44 +08:00 |
|
mutouyun
|
415be36477
|
ipc::sync::mutex for linux
|
2021-09-11 15:52:48 +08:00 |
|
mutouyun
|
1dc0419865
|
ignore invalid id print in get_ref
|
2021-08-29 13:58:34 +08:00 |
|
木头云
|
78be14be37
|
Merge branch 'develop' into master
|
2021-08-29 11:05:24 +08:00 |
|
mutouyun
|
c9d92b5364
|
CP_ACP => CP_UTF8
|
2021-08-15 12:40:32 +08:00 |
|
mutouyun
|
df8bca22c3
|
codecvt_utf8_utf16/std::wstring_convert is deprecated
|
2021-08-07 18:33:45 +08:00 |
|
mutouyun
|
d0f965359d
|
recycle storage for large message
|
2021-07-11 15:56:30 +08:00 |
|
mutouyun
|
349094561f
|
horrible_cast
|
2021-07-11 13:13:31 +08:00 |
|
mutouyun
|
628914d428
|
try to adjust recycling strategy for large message cache
|
2021-07-11 13:13:30 +08:00 |
|
mutouyun
|
98a3449865
|
fix some bugs, adjust the test cases
|
2021-07-11 13:13:30 +08:00 |
|
mutouyun
|
7bedfbfb5b
|
fix: large message cache may not be recycled with multiple receivers
|
2021-07-11 13:11:24 +08:00 |
|
mutouyun
|
69e1586b5a
|
remove tls
|
2021-07-10 14:22:31 +08:00 |
|
mutouyun
|
d74f4c5609
|
fix: mutex() noexcept is implicitly deleted
|
2021-06-21 00:06:17 +08:00 |
|
mutouyun
|
dd29ed5d1f
|
fix errors
|
2021-06-21 00:02:48 +08:00 |
|
mutouyun
|
40eafcfd2a
|
fix errors
|
2021-06-21 00:00:11 +08:00 |
|
mutouyun
|
d974641a07
|
for vs2015 error C3256
|
2021-06-20 23:50:39 +08:00 |
|
mutouyun
|
455c0b479d
|
add sync::mutex for windows/linux
|
2021-06-20 23:50:39 +08:00 |
|
mutouyun
|
12944502a1
|
Revert "update IPC_CONCEPT_"
This reverts commit 1e5547e6dfd0605fa62be67899c6c893aa61f9fc.
|
2021-06-20 23:50:39 +08:00 |
|
mutouyun
|
8cd2a40bfd
|
update IPC_CONCEPT_
|
2021-06-20 23:50:39 +08:00 |
|
木头云
|
d6ab58fc6f
|
add make_align for size alignment
|
2021-05-07 15:41:32 +08:00 |
|
木头云
|
a4a7b85f47
|
static_alloc is used by default
|
2021-05-07 15:35:10 +08:00 |
|
mutouyun
|
a7bec6348b
|
格式调整
|
2021-01-10 14:45:17 +08:00 |
|
mutouyun
|
152b5515d2
|
fix: recv may block after disconnect
|
2021-01-10 14:29:23 +08:00 |
|
mutouyun
|
8e6ae4220b
|
mmb force_push 出现竞争时,应该在失败后先正常push一次
|
2021-01-09 21:42:56 +08:00 |
|
mutouyun
|
23d2007c5e
|
对mmb来说,incr上限65535不够大,调整至16,777,215
|
2021-01-03 14:03:16 +08:00 |
|
mutouyun
|
6163618433
|
针对不同类型的策略,增加不同的sender/receiver个数检查。
- is_multi_producer:sender无限制;否则仅允许一个
- is_multi_consumer:receiver个数上限依赖is_broadcast指定;否则仅允许一个
- is_broadcast:receiver个数上限为32(uint_t<32>位数);否则无限制(uint_t<32>大小)
行为变更:
1. 在连接时根据模式检查sender/receiver是否超出上限,超出则返回false
2. 在send时确认是否允许发送(对receiver模式来说,send之前不会尝试确认sender个数)
3. 修正若干bug
|
2021-01-03 12:52:03 +08:00 |
|
mutouyun
|
c4617a2290
|
'elem-array::connect' should always return 0 when the connection-slot is full.
|
2021-01-01 13:28:25 +08:00 |
|
mutouyun
|
10cc2d3360
|
修正:disconnect不会自动退出wait_for_recv
|
2020-09-26 19:17:25 +08:00 |
|
mutouyun
|
7545e17084
|
简化接口
|
2020-09-20 12:20:55 +08:00 |
|
mutouyun
|
1323dc736b
|
for linux
|
2020-09-20 11:57:27 +08:00 |
|
mutouyun
|
e51855f1df
|
调整代码结构
|
2020-09-20 11:43:27 +08:00 |
|
mutouyun
|
aaf67858c2
|
for linux
|
2020-09-19 18:41:33 +08:00 |
|
mutouyun
|
bce3894707
|
添加正常退出的机制(win)
|
2020-09-19 17:37:33 +08:00 |
|
mutouyun
|
523d38d247
|
调整目录结构,隔离include路径,修正tls在win下的问题
|
2020-09-13 17:29:14 +08:00 |
|