🗒️Timer实现原理

比尔盖子

技术分享|2020-8-3|最后更新: 2023-10-13|
type
status
date
slug
summary
tags
category
icon
password

使用方法

Timer是一个定时任务触发装置,设置任务,触发延时和触发间隔就可以定时执行任务。以下是个简单的输出任务,每隔1000ms执行一次。

内部原理

Timer内部有个TimerThread线程,初始化的时候会开启。TaskQueue队列保存着任务,TaskQueue按执行时间进行堆排序。
TimerThread内部的队列就是Timer里面队列的引用,mainLoop是个死循环,不断从queue里取最近的一个需要执行的。

总结

Timer的实现原理简单来说就是单线程+最小堆+任务轮询
Loading...