常用的四种线程池创建方法包括1. newFixedThreadPool() 固定大小线程池 2. newCachedThreadPool() 缓存线程池 3. newSingleThreadExecutor() 单线程线程池 4. newScheduledThreadPool() 定时或周期性执行任务的线程池。线程池项目中如何用?
什么是线程池?
线程池就是 申请固定数目的线程,放在某个空间中。
当申请线程时,就从线程池中取得。当线程池中的线程都被占用的时候,无法获取到新的线程。连接池是数据库连接池,跟线程池原理一样。目的都是一样的,防止链接过多造成压力。
创建线程池四种方法?
常用的四种线程池创建方法包括
1. newFixedThreadPool() 固定大小线程池 2. newCachedThreadPool() 缓存线程池 3. newSingleThreadExecutor() 单线程线程池 4. newScheduledThreadPool() 定时或周期性执行任务的线程池。
线程池项目中如何用?
在线程池项目中,可以使用ExecutorService接口来调度和管理线程池中的任务,该接口提供了多个操作线程池的方法,比如execute、submit、shutdown等,在线程池的应用场景中,可以采用execute方法把任务提交到线程池中去执行,以及通过shutdown或shutdownNow方法关闭线程池。
线程池存活时间设置多久比较好?
设置60秒比较好,keepAliveTime(线程存活保持时间)作用:当线程池中线程数大于核心线程数时,线程的空闲时间如果超过线程存活时间,那么这个线程就会被销毁,直到线程池中的线程数小于等于核心线程数。
缓存线程池,缓存的线程默认存活60秒。
线程的核心池corePoolSize大小为0,核心池最大为Integer.MAX_VALUE,阻塞队列使用的是SynchronousQueue。是一个直接提交的阻塞队列, 他总会迫使线程池增加新的线程去执行新的任务。在没有任务执行时,当线程的空闲时间超过keepAliveTime(60秒),则工作线程将会终止被回收,当提交新任务时
常量池?线程池?连接池?各是什么,优点及特点是什么?
线程池就是 申请固定数目的线程,放在某个空间中。
当申请线程时,就从线程池中取得。当线程池中的线程都被占用的时候,无法获取到新的线程。连接池是数据库连接池,跟线程池原理一样。目的都是一样的,防止链接过多造成压力。
0