Timer的缺陷
在java中,Timer类可以实现定时任务,但Timer有两个致命缺陷,一是timer的任务是单线程运行的,如果前面的任务运行时间过长,会影响后面任务的运行,二是如果任务发生异常没有捕获,则后面的任务就不会执行了。
2025年07月05日
在java中,Timer类可以实现定时任务,但Timer有两个致命缺陷,一是timer的任务是单线程运行的,如果前面的任务运行时间过长,会影响后面任务的运行,二是如果任务发生异常没有捕获,则后面的任务就不会执行了。
2025年07月05日
大家好,我是小郭,今天主要来和大家聊一聊RocketMQ中的线程池是如何创建的,如何设置线程池数量,同时也可以从中去学习到一些线程池的实践和需要注意的一些细节。
在RocketMQ中存在了大量的对线程池的使用,从消息的生产到投递Broker中,到最后的消息消费每一个环节中都大量使用到线程池的地方,下面我们拿出几个不同类型的线程池来看一看。
2025年07月05日
在现代软件开发中,任务调度器的重要性不言而喻。它像一位优秀的项目经理,合理安排任务的执行顺序和时间,确保程序高效运作。今天,我们就来聊聊如何用Java构建一个高效的调度器,让您的程序任务井然有序。
2025年07月05日
在Java中使用线程池,可以用ThreadPoolExecutor的构造函数直接创建出线程池实例,如何使用参见之前的文章Java线程池构造参数详解。不过,在Executors类中,为我们提供了常用线程池的创建方法。接下来我们就来了解常用的四种:
首先,看一下这种线程池的创建方法:
2025年07月05日
场景描述
当用户对app有某些业务操作时,需要将该操作友好地提醒给,有接收提醒权限的后台管理者。
技术场景分析
经分析,要实现上述业务,业务拆解后可能需要解决如下业务
①.触发提醒待推送数据的监听
②.提醒时接收
2025年07月05日
项目开发中会涉及很多需要定时执行的代码,如每日凌晨对前一日的数据进行汇总,或者系统缓存的清理、对每日的数据进行分析和总结等需求,这些都是定时任务。单体系统和分布式系统的分布式任务有很大的区别,单体系统就一个任务执行类,非常简单,分布式系统则要保证定时任务执行的唯一性,不能让一个定时任务被执行多次。