是否有可能将i的值传递给新线程对象?Java将值传递给新对象
当前代码:
int cores = 4;
final int n = 10000;
static double sum = 0.0;
Thread[] threads = new Thread[cores];
for (int i = 0; i < cores; i++)
{
threads[i] = new Thread(new Runnable() {
public void run() {
for (int j = i * (n/cores); j < (i + 1) * N/P; j++) {
double x = (j + 0.5) * step;
sum += 4.0/(1.0 + x * x);
}
}
});
}
问候
不,但您可以将最终的int变量添加到您的Runnable并使用i初始化它。 – Ingo