我有一个如下所示的类结构。
class A
{
B b;
A()
{
b = new B();
b.a = this;
}
}
class B
{
A a;
}
class C
{
A a = new A();
//a is ready for Garbage collection
a = null;
}
在活动销毁()中,我将设置变量a= null
假设我想证明1d12 (十二边模)服从矩形分布,2d6服从正态分布。
快速和肮脏的方法是统计大约1000个随机生成的数字,将它们放在一个数组中,然后从那里计算平均值和期望值。
但是,如果我想通过使用运行的总计而不是1000个成员数组来节省内存呢?
我可以这样做吗?
for (i =0; i < 1000; i++){
x = Math.Random(1,6);
runningTotal += x;
}
mean = runningTotal / 1000;
我用下面这行代码得到了一个段错误:
char* addr = (char*)std::malloc(bytes);
在运行GDB时,我看到bytes的值为851984。据我所知,这不是什么大问题。我怎么也看不出它有什么问题。有人有什么建议吗?
实际的段错误是:
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff674dd75 in malloc_consolidate (av=0x7ffff6a87720) at malloc.c:4254
我有一个能在几秒钟内创建和处理数千个POJO的服务,所以我的问题是:,最有效的方法是什么?
下面是我当前的实现。能再快一点吗?
工厂:
public class ModelProxyFactory {
public static <T> T factory(Object entityProxy, Class<T> destinationType) throws IllegalAccessException, InstantiationException {
Class<?> proxyType = new ByteBuddy()