我正在尝试为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)
}
}
答案 0 :(得分:2)
第一个示例创建一个新的Thread,并在其中运行for循环(由于该线程不是守护程序线程,循环一直通过,因此在线程完成之前VM不会退出)
第二个示例调用withPool
,然后对此池不执行任何操作,只在当前线程中运行for循环。您没有使用任何GPars并发方法,因此可以省略withPool
以获得完全相同的结果。
答案 1 :(得分:0)
您无法比较Java(语言)和GPars(库)。您可以比较语言和语言,或库和库。顺便说一句,GPars可以直接从Java中使用。您可能想要的是将标准Java库与GPars进行比较。