heap-memory

    8热度

    5回答

    我们有一个运行Java 5的长时间运行的服务器应用程序,并且通过分析我们可以看到,随着时间的推移,老一代增长缓慢。它在一个完整的GC上正确释放,但我希望能够使用堆转储查看Eclipse MAT中不可访问的对象。我已经使用+ XX:HeapDumpOnCtrlBreak成功获得堆转储,但JVM在转储堆之前始终执行GC。显然这不会发生在Java 6上,但现在我们被困在了5上。有什么办法可以防止这种情况

    9热度

    5回答

    这是在C++中创建在堆上一个变量的方法,包括: T *ptr = new T; PTR是指一个指针,指向新的T,明显。我的问题是,你可以这样做: T *ptr = new T*; 这似乎是它可以导致一些非常,非常危险的代码。有谁知道这是可能的/如何正确使用它?

    62热度

    5回答

    通常默认实现Object.hashCode()是对象在内存中分配地址的某些功能(虽然这不是由JLS强制执行的)。鉴于虚拟机在内存中分流对象,为什么在对象的生命周期中,返回的值为什么不会改变?如果是“一次性”计算(对象的hashCode计算一次并隐藏在对象头部或某物中),那么这是否意味着两个对象可能具有相同的identityHashCode(如果它们发生的话)首先分配在内存中的相同地址)?

    23热度

    7回答

    这是一个唠叨我一段时间的问题。我一直认为应该设计C++,以便即使使用“new []”运算符,“删除”运算符(无括号)也能工作。 在我看来,写这个: int* p = new int; 应相当于分配1个元素的数组: int* p = new int[1]; 如果这是真的,“删除”操作者总是可以删除数组,而我们不需要“delete []”运算符。 为什么在C++中引入“delete []”运算

    2热度

    2回答

    我是C++中使用堆分配的新手。 我试着去了解这个场景,它会强制别人创建一个私有堆而不是使用Process Heap。对大多数情况来说,Process Heap不够普遍吗? 感谢 --Ashish

    2热度

    6回答

    在大多数现代IDE中,可以设置一个参数以确保javac获得足够的堆内存来编译它。由于这里不值得考虑的原因,我们暂时与JBuilder 2005/2006捆绑在一起,看起来源代码的数量超过了javac可以处理的数量。 请保持特定的JBuilder 2005/2006 javac的答案(我们不能迁移走,现在,Borland的让编译器不能正确支持Java 1.6) 我知道如何和什么参数应该传递到java