android 线程池使用

来源:互联网 发布:javaweb商城源码 编辑:程序博客网 时间:2024/05/19 16:38
              1. newCachedThreadPool:线程池为无限大,当有用完线程,后面的线程就用用完线程,无有就新建。
//新建ExecutorService cachedThreadPool=Executors.newCachedTheadPool()//加入线程cachedThreadPool.execute(...)//尝试停止所有正在执行和等待的任务,并返回等待执行的任务的列表。cachedThreadPool.shutdownNow()//启动有序关闭,执行先前提交的任务,但不会接受新任务。cachedThreadPool.shutdown()
        2.newFixedThreadPool:线程池有限,超出的线程会在队列中等待。
//新建ExecutorService fixedThreadPool = Executors.newFixedThreadPool(//线程数,用Runtime.getRuntime().availableProcessors()获得虚拟机可用的处理器数,这里不能<=0)//加入线程cachedThreadPool.execute(...)//尝试停止所有正在执行和等待的任务,并返回等待执行的任务的列表。cachedThreadPool.shutdownNow()//启动有序关闭,执行先前提交的任务,但不会接受新任务。cachedThreadPool.shutdown()
      3.newScheduledThreadPool:定长线程池,支持定时及周期性任务
//新建ScheduledExecutorService scheduledThreadPool = Executors.newScheduledThreadPool(池中保留的线程数)//加入 延迟 线程cachedThreadPool.schedule(...TimeUnit.SECONDS//秒)//加入 定期 延迟 线程cachedThreadPool.scheduleAtFixedRate(...TimeUnit.SECONDS//秒)//尝试停止所有正在执行和等待的任务,并返回等待执行的任务的列表。cachedThreadPool.shutdownNow()//启动有序关闭,执行先前提交的任务,但不会接受新任务。cachedThreadPool.shutdown()
      4.newSingleThreadExecutor:单线程的线程池
//新建ExecutorService singleThreadExecutor = Executors.newSingleThreadExecutor()//加入线程cachedThreadPool.execute(...)//尝试停止所有正在执行和等待的任务,并返回等待执行的任务的列表。cachedThreadPool.shutdownNow()//启动有序关闭,执行先前提交的任务,但不会接受新任务。cachedThreadPool.shutdown()
        5.newSingleThreadScheduledExecutor:单线程的线程池,,支持定时及周期性任务
//新建ScheduledExecutorService SingleThreadScheduledExecutor= Executors.newSingleThreadScheduledExecutor()//加入 延迟 线程SingleThreadScheduledExecutor.schedule(...TimeUnit.SECONDS//秒)//加入 定期 延迟 线程SingleThreadScheduledExecutor.scheduleAtFixedRate(...TimeUnit.SECONDS//秒)//尝试停止所有正在执行和等待的任务,并返回等待执行的任务的列表。cachedThreadPool.shutdownNow()//启动有序关闭,执行先前提交的任务,但不会接受新任务。cachedThreadPool.shutdown()
0 0