Javaには、コードがあります:
Graph[] graphs = new Graph[100];
for (int i = 0; i < 100; i++) {
graphs[i] = new Graph();
Graph g = graphs[i];
g.subgraphs = new Graph[100 - i];
g.leaves = new HashSet<Integer>();
g.targets = new HashMap<Integer, int[]>(l - i);
g.weights = new HashMap<Integer, Integer>(l - i);
}
並列コードを書きたい。ここでJavaスレッドの学習を手伝ってくれませんか。だから私はこのコードを追加しました:
Thread[] threads = new Thread[3];
for (int i = 0; i < threads.length; i++) {
threads[i] = new Thread(new Runnable() {
public void run() {
// some code to run in parallel
}
});
threads[i].start();
}
// as far as I understood this waits until threads above are finishing
for (int i = 0; i < threads.length; i++) {
try {
threads[i].join();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
これで、カスタム オブジェクトを作成するときにループからコードをコピーできますが、Graph
何らかの方法でインデックスi
( 0
to から100
) をrun()
メソッドに渡す必要があります。
どうやってやるの?