java8多線程帶返回值的


 public static void main(String[] args) throws InterruptedException, ExecutionException {
        long start = System.currentTimeMillis();

        Map<String, Object> flag = findAll();

        System.out.println((System.currentTimeMillis() - start) / 1000 + "秒");
        System.out.println(flag);
    }


    public static List<Rygl> findRyList(Rygl rygl) {
        List<Rygl> list = ryglDao.queryRydaglList(rygl);
        return list;
    }

    public static Map<String, String> findZzjg() {
        Map<String, String> zzMap = commonService.queryMap();
        return zzMap;
    }

    public static Map<String, Object> findAll() throws InterruptedException, ExecutionException {
        Callable a = () -> {
            return findRyList(rygl);
        };
        Callable b = () -> {
            return findZzjg();
        };

        FutureTask<List<Rygl>> ryList = new FutureTask<List<Rygl>>(a);
        FutureTask<Map<String, String>> zzMap = new FutureTask<Map<String, String>>(b);

        new Thread(ryList).start();
        new Thread(zzMap).start();

        List<Rygl> list = ryList.get();
        Map<String, String> zzjgMap = zzMap.get();
        map.put("a", list);
        map.put("b", zzjgMap);

        return map;
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM