我正在使用 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()
在再次提交之前使用该方法......但是,您通常只会创建一个新的任务实例)。
添加回答
举报
0/150
提交
取消