Skip to content

Timer v2 - #29

Open
Sherlock0203 wants to merge 17 commits into
LinQuickDev:ubshm_transport_fix_2from
Sherlock0203:timer_v2
Open

Timer v2#29
Sherlock0203 wants to merge 17 commits into
LinQuickDev:ubshm_transport_fix_2from
Sherlock0203:timer_v2

Conversation

@Sherlock0203

Copy link
Copy Markdown

What problem does this PR solve?

Issue Number: resolve

Problem Summary:

What is changed and the side effects?

Changed:

Side effects:

  • Performance effects:

  • Breaking backward compatibility:


Check List:

…默认的闭门定时器过于频繁、所有定时器回调都在同一P线程上串行、macOS模拟在功能上并不等效。2、移除固定数组,改用unordered_map;3、为itimerspec添加归一化;4、解决CqSidOp的sid相同而event不同时添加失败的问题
…默认的闭门定时器过于频繁、所有定时器回调都在同一P线程上串行、macOS模拟在功能上并不等效。2、移除固定数组,改用unordered_map;3、为itimerspec添加归一化;4、解决CqSidOp的sid相同而event不同时添加失败的问题
# Conflicts:
#	src/brpc/ubshm/ub_endpoint.cpp
…默认的闭门定时器过于频繁、所有定时器回调都在同一P线程上串行、macOS模拟在功能上并不等效。2、移除固定数组,改用unordered_map;3、为itimerspec添加归一化;4、解决CqSidOp的sid相同而event不同时添加失败的问题
…默认的闭门定时器过于频繁、所有定时器回调都在同一P线程上串行、macOS模拟在功能上并不等效。2、移除固定数组,改用unordered_map;3、为itimerspec添加归一化;4、解决CqSidOp的sid相同而event不同时添加失败的问题
…默认的闭门定时器过于频繁、所有定时器回调都在同一P线程上串行、macOS模拟在功能上并不等效。2、移除固定数组,改用unordered_map;3、为itimerspec添加归一化;4、解决CqSidOp的sid相同而event不同时添加失败的问题
# Conflicts:
#	src/brpc/ubshm/timer/timer_mgr.cpp
#	src/brpc/ubshm/timer/timer_mgr.h
…造后不可变、新增同步字段:std::mutex mtx、std::condition_variable cv、bool stopped(硬删除)、bool no_reschedule(软删除)、int running(在途回调计数)

timer_mgr.cpp — 重写并发逻辑。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant