java线程池实例_java开发自定义线程池实例,基于maven构建

2016年10月份的时候就想自己通过所学去实现一个线程池,但是因为种种原因,并未成功。前几天想到这个项目,继续思考怎么实现,于是就有了下文。注意:本人实现的线程池只是用来学习的,有不正之处还望指出。

实现线程池,觉得最重要是实现一个线程执行完任务能够回收到池中,并且下次能够从池中拿到该线程继续使用。10月份的时候想着用数组或者List去模拟一个池,前几天思考用队列是不是会更简单,所以想做就做了。线程池的关闭也是个比较棘手的问题,关闭有两种,一种是完成任务后线程全部关闭,一种是未完成任务全部线程就要结束。

项目使用maven结构,日志打印使用log4j,想学习maven的也可以下载学习,可以实现本地与测试资源自动切换。

项目结构图如下:

5f44669d9023f819b9cfa4031178418d.png

项目测试类main方法,初始化10个线程,执行100个任务:

5f44669d9023f819b9cfa4031178418d.png

项目运行图,可以看到线程被重复利用了:

5f44669d9023f819b9cfa4031178418d.png

最后是线程池关闭,执行完任务后,线程都结束了:

5f44669d9023f819b9cfa4031178418d.png

总结下:

完成了这个线程池之后,对自己的提升也是不小的。接下来就是继续探索java之路。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值