したがって、プログラムがこれを行う場合:
static ArrayList<X> a = null;
static{
for(;;){X x = new X(); a.add(x)}
}
共有リストで静的初期化後に呼び出される操作は、get()とxt()のみです。
X x = a.get(i); x.t();
Xはコンテナにアクセスできず、スレッドセーフです。つまり、同期なしでこのようなArraylistを使用すると、スレッドセーフになります。