比较Java和GPars

时间:2013-01-19 17:02:37

标签: java multithreading groovy gpars

我正在尝试为Java和GPars找到可比较的代码片段,以便可视化,GPars有多容易。
以下代码在两种情况下都是一样的吗?我不是指输出,而是“内部”发生的事情。 或者有没有办法缩短它?

爪哇:

package java;

public class Main extends Thread {

    public void run() {
        for (int i = 1; i <= 100; i++) {
            System.out.println(i);
        }
    }

    public static void main(String args[]) {
        (new Main()).start();
    }

}

Groovy的:

import static groovyx.gpars.GParsPool.withPool

withPool{
    for(int i=1; i<=100; i++) {
        println (i)
    }
}

2 个答案:

答案 0 :(得分:2)

第一个示例创建一个新的Thread,并在其中运行for循环(由于该线程不是守护程序线程,循环一直通过,因此在线程完成之前VM不会退出)

第二个示例调用withPool,然后对此池不执行任何操作,只在当前线程中运行for循环。您没有使用任何GPars并发方法,因此可以省略withPool以获得完全相同的结果。

答案 1 :(得分:0)

您无法比较Java(语言)和GPars(库)。您可以比较语言和语言,或库和库。顺便说一句,GPars可以直接从Java中使用。您可能想要的是将标准Java库与GPars进行比较。