以下代码是否可以安全发布?
public MyThread extends Thread {
@Override
public void run(){
for(int i=0; i < 100; i++){
MyObject[] array = new MyObject[16];
for(int j=0; j < 16; j++){
array[i] = new MyObject(j);
array[i].memberAttribute++;
}
// At this point the array is assigned to a shared volatile
// MyObject[] ref or put inside a concurrent collection
}
}
}
Happens -before here 适用于每个新创建的对象还是仅适用于数组本身?
就算j
里面会容纳的领域MyObject
不是final
?