美文网首页
问题:如何实例化ForkJoinPool

问题:如何实例化ForkJoinPool

作者: Dream_Lin | 来源:发表于2019-01-24 17:17 被阅读9次

    问题

    如何实例化ForkJoinPool

    答案

    在Java8,获取ForkJoinPool实例最方便的方法是使用这个类的静态方法commonPool(),这个方法将会提供一个ForkJoinPool的引用,是ForkJoinTask默认的线程池.

    使用预定义的线程池可以减少资源的消耗,因为它阻止为每个任务单独创建一个线程池.

    ForkJoinPool commonPool = ForkJoinPool.commonPool();
    

    在Java7,可以自己实例化一个ForkJoinPool,并将引用分配给一个工具类的静态成员变量.

    public class ForkJoinPoolUtil {
    
        public static ForkJoinPool forkJoinPool = new ForkJoinPool(2);
    }
    

    访问静态成员变量:

    ForkJoinPool forkJoinPool = ForkJoinPoolUtil.forkJoinPool;
    

    使用ForkJoinPool构造器,可以创建一个自定义的线程池,我们可以指定线程池的并行等级,线程工厂,异常处理器。在上面的例子中,线程池的并行等级为2,这意味着线程池将使用2个处理器内核.

    相关文章

      网友评论

          本文标题:问题:如何实例化ForkJoinPool

          本文链接:https://www.haomeiwen.com/subject/ucdujqtx.html