关于启动一个线程监控队列的替代方案

项目背景:

  操作对象:一个定长的任务队列

  队列状态:任务队列中的任务会在一定时间后完成,完成后需要移出队列,然后重新计算队列剩下的长度。

  队列的操作大致分为两类:

    一类是查询队列状态,看队列里面还剩下的空间。

    另一类是队列插入操作,如果队列已经满了,就插入失败。

一个普通的思路是通过启动一个线程来监控队列中是否有任务完成,如果有任务完成,就移出队列,队列长度加一。

另外一个思路就是只在进行上面两个操作的时候才检查队列,得出的结果就是一样的。这种方式更容易实现。

 

 

感觉就像哲学里面的非主流的世界观,当你不在看这个世界的时候,这个世界会变成千奇百怪的样子。当你回头再次观察这个世界的时候,这个世界又像一个调皮的孩子把一切恢复的原模原样。你以为世界一直按照一个规则在运行,其实这是一个假象。。。。

posted @ 2018-09-13 17:27  佟歌  阅读(519)  评论(0编辑  收藏  举报