import java.util.ArrayList;
import java.util.List;
import net.sf.ehcache.pool.sizeof.UnsafeSizeOf;
public class EhCacheTest {
private List<Double> testList = new ArrayList<Double>();
public static void main(String[] args) {
EhCacheTest test = new EhCacheTest();
for(int i=0;i<1000;i++) {
test.addItem(1.0);
System.out.println(new UnsafeSizeOf().sizeOf(test));
}
}
public void addItem(double a) {
testList.add(a);
}
}
UnsafeSizeOf を使用して、オブジェクト 'test' のサイズを計算しました。リストに double をいくつ追加しても、'test' のサイズは常に 16 バイトです。
このため、maxBytesLocalHeap パラメータは私には役に立ちません。