zoukankan      html  css  js  c++  java
  • 线程池与Callable接口

    定义:

    一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多资源。

    使用方法

    public void lockDemo() throws InterruptedException, ExecutionException {
            ExecutorService executor= Executors.newFixedThreadPool(20);
            Callable callable=new Callable() {
                @Override
                public Object call() throws Exception {
                    return "实现Callable接口的线程池demo";
                }
            };
            //开启线程
            Future<String> submit = executor.submit(callable);
            //获取线程返回值
            String result = submit.get();
            //关闭线程池
            executor.shutdown();
        }
    

    优点:

    1.降低资源消耗。减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。
    2. 提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。
    3. 提高线程的可管理性。可以根据系统的承受能力,调整线程池中工作线线程的数目,防止因为消耗过多的内存,而把服务器累趴下(每个线程需要大约1MB内存,线程开的越多,消耗的内存也就越大,最后死机)

    XFS
  • 相关阅读:
    原型链与继承
    js错误处理Try-catch和throw
    函数柯里化
    js函数节流
    事件委托
    innerHTML属性的内存和性能问题
    微信小程序左滑显示按钮demo
    this的作用
    前端工作面试经典问题(超级全)
    HTML5入门指南
  • 原文地址:https://www.cnblogs.com/xiaofengshan/p/14649805.html
Copyright © 2011-2022 走看看