为了账号安全,请及时绑定邮箱和手机立即绑定

Java ForkJoinPool 不能被调用两次?

Java ForkJoinPool 不能被调用两次?

桃花长相依 2021-10-20 15:03:39
我正在使用 fork/join 编写 Java 多线程程序。当我调用fork/join pool两次时,只会执行一次,为什么?public class Test extends RecursiveAction{    public static void main(String[] args) {        Test test=new Test();        test.myCompute();        // calling the 2nd time, no output        test.myCompute();    }    public void myCompute() {        ForkJoinPool fjPool = new ForkJoinPool();        fjPool.invoke(this);    }    @Override    public void compute() {        System.out.println("mark");    }}输出:标记
查看完整描述

1 回答

?
繁花如伊

TA贡献2012条经验 获得超12个赞

这是因为您要多次提交同一个任务实例以供执行。每个实例只能执行一次(除非您reinitialize()在再次提交之前使用该方法......但是,您通常只会创建一个新的任务实例)。


查看完整回答
反对 回复 2021-10-20
  • 1 回答
  • 0 关注
  • 229 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信