我正在使用 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
提交
取消