Crazyokd / rekord-blog

repo for my blog.
https://sxrekord.com
3 stars 1 forks source link

一个对多引用指针访问和释放的解决方案(定时器) - Rekord-Blog #96

Closed Crazyokd closed 4 days ago

Crazyokd commented 3 weeks ago

https://sxrekord.com/timer-multi-pointer/

背景 定时器通过时间轮的方式实现,即将定时器节点按照过期时间挂在相应的单向链表上。(中途可能存在更细粒度的时间划分,从而出现多次挂载) 定时器节点在其内部动态分配 外部可能同时存在多个用户类使用该定时器,可能的操作包括 添加定时器(需分配用户数据) 删除定时器(需删除用户数据) 析构整个用户类(取消所有该用户添加且还未触发的定时器,并删除所有分配的用户数据) 所以每个定时器节点包含两