0
点赞
收藏
分享

微信扫一扫

关于线程池的理解 [Java]

人间四月天i 2022-01-18 阅读 41

关于线程池的理解

使用线程池的方式创建多线程和一般的直接创建多线程有什么区别?

一般方式创建线程:

我们就以逛淘宝为例: 这个时候我们在逛淘宝,这个时候我们逛淘宝的时候会加载很多的图片,我们在现实生活中可以发现,即使有的图片还没有加载出来,这个时候我们可以继续滑动页面,其实就是页面上加载每一个图片其实都是一个分线程去干的,这个时候我们客户如果滑动的很快,这个时候很多线程还没有将图片加载出来,就划走了,这个时候就要加载新的线程销毁原来的线程,这个时候我们会重复的去创建一些线程 ,就会很大程度上降低程序执行的效率

使用线程池方式创建线程:

这个时候我们还是以逛淘宝为例: 这个时候我们在逛淘宝的时候,我们会加载很多的图片,这个时候假如我们的客户也还是滑动页面滑动的很快,这个时候我们如果是线程池的方式,这个时候我们滑动的时候一旦滑动到新的图片,这个时候我们就从线程池中获取一个线程来执行,如果这个图片被划了过去,这个时候对应的这个图片的线程就也被回收到线程池中

我们创建了一个新的线程之后这个时候使用了一会之后可能线程要做的事情执行完了,这个时候我们就要销毁这个线程,然后这个时候如果又要干一个事情,这个时候我们又要创建一个新的线程,这个时候就很耗费时间---- 如果是在现实生活中:

补充:

以后我们还会学到很多和线程池相似的就比如:数据库连接池

  • 在我们后面学习jdbc的时候就会学习到数据库连接池 — 这个数据库连接池其实也就是和线程池的作用差不多,因为我们现实生活中我们和数据库建立连接的时候很多时候会大量重复的建立连接,这个时候如果我们重复的建立数据库连接和断开连接,这个时候也会很大程度上影响我们程序的执行效率,这个时候我们就提出了数据库连接池
举报

相关推荐

0 条评论