线程池和数据库连接池

Posted whirlwind

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程池和数据库连接池相关的知识,希望对你有一定的参考价值。

什么是线程池和工作机制?

当一个程序中若创建大量线程,并在任务结束后销毁,会给系统带来过度消耗资源,以及过度切换线程的危险,从而可能导致系统崩溃.为此我们应使用线程池来解决这个问题
首先创建一些线程,它们的集合成为线程池,当服务器接收到一个客户请求后,就从线程池中取出一个空闲的线程位置服务,服务结束后不关闭该线程,而是将该线程还回到线程池中.当线程池的编程模式下,任务是提交给整个线程池,而不是直接交给某个线程,线程池在拿到任务后,它就在内部找有无空闲的线程,再把任务交给内部某个空闲的线程,一个线程同时只能执行一个任务,但可以同时向一个线程池提交多个任务.

JavaEE,数据连接池的工作机制是什么?

JavaEE服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接.客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其标记为忙.如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量由配置参数决定.当使用的池连接调用完成后,池驱动程序将次连接标记为空闲,其他调用就可以使用这个连接.

 


以上是关于线程池和数据库连接池的主要内容,如果未能解决你的问题,请参考以下文章

聊聊连接池和线程

聊聊连接池和线程

线程池和数据库连接池

数据库连接池和线程池

转 聊聊连接池和线程

HTTP异步连接池和多线程实践