이 메서드를 사용하여 배열 복사본을 만들지 만 의심 스럽지만 스레드를 열고 새 스레드로 배열을 보냈습니다.이 배열의 복사본을 새 스레드, 배열 변경 될 수 있으며 이로 인해 프로그램 메커니즘에 악영향을 미칩니다.새 스레드에서 배열 복사본을 어떻게 만듭니 까?
degersakla = new Integer[10000][1][boyut];
Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
new GunlukKontrol(update, data, limit, degersakla, sincetime, untiltime);
}
});
t1.start();
try {
Thread.sleep(400000); // Waiting For new Thread's Copy Operation
} catch (InterruptedException ex) {
Logger.getLogger(UpdateDeneme.class.getName()).log(Level.SEVERE, null, ex);
}
// new Thread
public GunlukKontrol(Object[][][] update, String[][] data, Object[] limit, Integer[][][] degersakla, String sincetime, String untiltime) {
this.degersakla = new Integer[degersakla.length][1][boyut]; // copy method of array
for (int i = 0; i < degersakla.length; i++) {
for (int j = 0; j < 1; j++) {
for (int k = 0; k < boyut; k++) {
this.degersakla[i][j][k] = degersakla[i][j][k];
}
}
}
이 올바른 방법입니까?
배열 배열 배열? 확실해? – Eugene