JUC(12) - 线程调度

75 阅读1分钟

12. 线程调度

ScheduledExecutorService: 一个 ExecutorService,可安排在给定的延迟后运行或定期执行的命令。

    public static void main(String[] args) throws ExecutionException, InterruptedException {
        ScheduledExecutorService pool = new ScheduledThreadPoolExecutor(5);

        for (int i = 0; i < 5; i++) {
            Future<Integer> result = pool.schedule(new Callable<Integer>(){

                @Override
                public Integer call() throws Exception {
                    int num = new Random().nextInt(100);//生成随机数
                    System.out.println(Thread.currentThread().getName() + " : " + num);
                    return num;
                }

            }, 1, TimeUnit.SECONDS);

            System.out.println(result.get());
        }

        pool.shutdown();
    }