Main类
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.*;
public class Main {
public static int matrixSize = 10000;
public static void main(String[] args) throws IOException, InterruptedException {
LifeChess lifeChess = new LifeChess();
lifeChess.setSIZE(matrixSize);//设置棋盘大小
lifeChess.setGENERATIONS(2000);
lifeChess.initializeBoardfromTxt("7.init.txt");//获取初始矩阵
lifeChess.getRes("7.end.txt");//获取目标矩阵
ExecutorService executor = Executors.newFixedThreadPool(8);
long startTime = System.currentTimeMillis();
for (int i = 0; i < lifeChess.getGENERATIONS(); i++) {
lifeChess.initializeMode();
if (lifeChess.checkRes()) {
break;
}
List<Future<Void>> futures = new ArrayList<>();
for (int j = 0; j < matrixSize; j++) {
final int rowIndex = j;
futures.add(executor.submit(() -> {
new Thread_l(lifeChess, matrixSize, rowIndex).run();
return null;
}));
}
for (Future<Void> future : futures) {
try {
future.get(); // 阻塞直到每个任务完成
} catch

最低0.47元/天 解锁文章
969

被折叠的 条评论
为什么被折叠?



