3

上記(タイトル)は私の主な関心事です。そしてケースは

public class MyClass{
  CopyOnWriteArrayList<Stuff> min;
  ...
  public List<Stuff> get(){
    return min;
  }
}

結果のリストはget()負債から取得されますか? それは何が起こるかに影響しますか、minそれとも独自のコピーですか? たとえば、結果を反復処理している場合、get()その効果は何ですか?

また、そうしているうちに、逆はどうですか?私が行った場合

List<Stuff> stuffs = new ArrayList<Stuff>();
addABunchOfItems(stuffs);
CopyOnWriteArrayList safeStuff = (CopyOnWriteArrayList) stuffs;

3行目以降の並行処理の対応safeStuff状況は?stuffs

4

2 に答える 2