大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Java多線程編程概述
Java多線程的安全問題
Java多線程同步
Java多線程間的通信
Java線程Lock
Java多線程管理
保障線程安全的設計技術
Java鎖的優化及注意事項
Java多線程集合
【Java多線程】單例模式與多線程

Java線程池異常處理

在使用ThreadPoolExecutor進行submit提交任務時,有的任務拋出了異常,但是線程池并沒有進行提示,即線程池把任務中的異常給吃掉了,可以把submit提交改為execute執行,也可以對ThreadPoolExecutor線程池進行擴展.對提交的任務進行包裝:

package com.wkcto.threadpool;

import java.util.concurrent.*;

/**
 * 自定義線程池類,對ThreadPoolExecutor進行擴展
 */
public class Test08 {
    //自定義線程池類
    private static class  TraceThreadPollExecutor extends  ThreadPoolExecutor{
        public TraceThreadPollExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue workQueue) {
            super(corePoolSize, maximumPoolSize, keepAliveTime, unit, workQueue);
        }
        //定義方法,對執行的任務進行包裝,接收兩個參數,第一個參數接收要執行的任務,第二個參數是一個Exception異常
        public Runnable wrap( Runnable task, Exception exception){
            return  new Runnable() {
                @Override
                public void run() {
                    try {
                        task.run();
                    }catch (Exception e ){
                        exception.printStackTrace();
                        throw  e;
                    }
                }
            };
        }

        //重寫submit方法
        @Override
        public Future submit(Runnable task) {
            return super.submit(wrap(task, new Exception("客戶跟蹤異常")));
        }

        @Override
        public void execute(Runnable command) {
            super.execute(wrap(command, new Exception("客戶跟蹤異常")));
        }
    }

    //定義類實現Runnable接口,用于計算兩個數相除
    private static class  DivideTask implements  Runnable{
        private  int x;
        private  int y;

        public DivideTask(int x, int y) {
            this.x = x;
            this.y = y;
        }

        @Override
        public void run() {
            System.out.println(Thread.currentThread().getName() + "計算:" + x + " / " + y + " = " + (x/y));
        }
    }
    public static void main(String[] args) {
        //創建線程池
//        ThreadPoolExecutor poolExecutor = new ThreadPoolExecutor(0, Integer.MAX_VALUE, 0, TimeUnit.SECONDS, new SynchronousQueue<>());
        //使用自定義的線程池
        ThreadPoolExecutor poolExecutor = new TraceThreadPollExecutor(0, Integer.MAX_VALUE, 0, TimeUnit.SECONDS, new SynchronousQueue<>());

        //向線程池中添加計算兩個數相除的任務
        for (int i = 0; i < 5; i++) {
            poolExecutor.submit(new DivideTask(10, i));
//            poolExecutor.execute(new DivideTask(10, i));
        }

    }
}
全部教程
主站蜘蛛池模板: 欧美高清视频www夜色资源 | 一本一本久久a久久精品综合麻豆 | 久久视频这里只有精品 | 成人性生活免费看 | 特黄aa级毛片免费视频播放 | 欧美一区二区三区精品国产 | 日本黄色小视频在线观看 | 视频二区精品中文字幕 | 婷婷激情综合网 | 特一级男女性色大片 | 精品国产精品国产 | 亚洲精品大片 | 国内精品视频 | 欧美激情在线播放一区二区 | se999se男人最爱 | 97精品免费视频 | 在线观看 日韩 | 最新欧美精品一区二区三区不卡 | 91探花国产综合在线精品 | 夜夜骑狠狠干 | 天天干天天骑 | 日韩欧美国产中文字幕 | 午夜成人免费影院 | 色综合久久综合欧美综合图片 | 色色在线视频 | 免看一级一片一在线看 | 美女在线看永久免费网址 | 亚洲一区在线日韩在线深爱 | 国产三级做爰在线播放最爱 | 国产东北露脸对白 | 欧美三级中文字幕 | 国产成人精品自拍 | 一级特黄特黄的大片免费 | 久久手机免费视频 | 国产精品成人免费综合 | 精品国产综合区久久久久99 | 99精品久久久久久久免费看蜜月 | 久久成人乱小说 | 免费国产午夜高清在线视频 | 97视频免费人人观看人人 | 欧美日韩精选 |