1.解决的问题:
1.1完善了启动之后可再次启动的机制,更加灵活
只需在启动监听中初始化数据即可
1.2实现了任务接口,只需发送的任务名为Task即可
创建了一个接口,在生产者中,读取名为Task的文件(这个类必须实现此接口的抽象方法)后,创建object对象调用Task默认的空参构造,利用接口实现多态,即可。接受文件处尚未开发。
1.3实现了生产过快,导致工作队列无法接受的问题
第一种方法:直接将工作队列改为无界的
第二种:创建Runnable泛型的链表阻塞队列来接受未提交成功的,接着一直提交,直到成功为止。或者创建新的线程,在新线程中提交。
这里采用一直提交的办法:
通过submit()方法以及while实现循环。线程池中执行的线程方法同理。
缺点:需要等待提交后才能执行下一个,效率不足。
使用新的线程提交就可以解决这个问题。