简单入门了解队列案例使用

        队列可用于多任务派发:比如我有10000个任务需要执行,若用for循环等同时执行10000个任务,可能程序会比较有压力,也可能会造成效率比较低,此时就可将这10000个任务拆分为如200个任务为一组执行,还可以在执行之前单独组装每个任务再派发到通道(队列)中,既由原来的一条线执行拆分为多段执行,每段可单独执行,执行的业务逻辑和入库可分开。

1.准备一个队列,队列中提供添加,获取和队列中数量的方法

简单入门了解队列案例使用

2.模拟单例模式,程序启动至生成一个队列(多个地方使用到队列,就生成多个)

简单入门了解队列案例使用

懒汉式单例并发,多线程效率比较低

 

简单入门了解队列案例使用

此处采用饿汉式

 

3.模式生成任务,添加到队列

简单入门了解队列案例使用

模拟执行任务

简单入门了解队列案例使用

4.模拟程序启动

简单入门了解队列案例使用

5.总结:可以自定义线程池,此处使用jdk自带线程池,如果生产者添加任务比较多,可多添加些生产者的对象到线程池中