加一个else,移除失败的情况;
![[Pasted image 20220731182348.png]]
加一个锁;
![[Pasted image 20220731182502.png]]
完善一下,生成tid的方法; 如果tid大于int的最大值,就直接将它置0;
![[Pasted image 20220731182645.png]]
然后,开始设置定时任务的回调; 先新建一个定时任务相关的Pack类,其中包含Action委托函数cb,还有tid; 写一下构造函数;
新建一个,线程安全的队列,其中的泛型参数,使用上面新建的TickTaskPack类即可;
![[Pasted image 20220731183415.png]]
在构造函数中,添加一个setHandle布尔传参,是用来判断,是否要设置setHandle传参;
![[Pasted image 20220731183727.png]]
如果为true,就初始化这个队列即可;
![[Pasted image 20220731184044.png]]
![[Pasted image 20220731184231.png]]
这个布尔值,是要设置成,全局变量的;
![[Pasted image 20220731184332.png]]
然后,这样调用设置一下即可;
![[Pasted image 20220731184500.png]]
在回调函数中,也添加一下判断,看是通过队列去调用,还是单独调用,对应的action委托;
![[Pasted image 20220731184652.png]]
删除函数里面,也调用和修改一下即可;
![[Pasted image 20220731184748.png]]
前面完成单独调用,和队列调用的判断之后,再加一个方法,是调用队列中的action委托函数的;