116得票6回答
将Java对象设置为null还有作用吗?

我正在浏览一些旧书,找到了Peter Hagger的《实用Java》。在性能部分,有一个建议是在不再需要时将对象引用设置为null。 在Java中,将对象引用设置为null是否可以提高性能或垃圾回收效率?如果是这样,在什么情况下会出现这个问题?容器类?对象组合?匿名内部类? 我经常在代码中...

114得票6回答
Java临时文件什么时候被删除?

假设我使用Java方法创建了一个临时文件File tmp = File.createTempFile(prefix, suffix); 如果我没有显式调用delete()方法,那么文件将在何时被删除? 直觉上,文件可能会在JVM终止时删除,或者更早(由垃圾收集器),或者更晚(由一些操作系统清...

113得票20回答
使用GC.Collect()有什么问题?

虽然我确实理解使用这个函数的严重后果(或者至少我认为是这样),但我不明白为什么它会成为那些尊重的程序员甚至对其用途一无所知的人都绝不使用的事情之一。 假设我正在开发一个应用程序,内存使用量根据用户的操作而极大地变化。 应用程序生命周期可分为两个主要阶段:编辑和实时处理。 在编辑阶段中,假设创...

112得票11回答
Android中的垃圾回收器

我看到许多 Android 的答案建议在某些情况下调用垃圾回收器。 在进行消耗内存的操作之前,在 Android 中请求垃圾回收器是一个好习惯吗?如果不是,那我应该仅在出现 OutOfMemory 错误时才调用它吗? 除了使用垃圾回收器之外,我还需要使用其他东西吗?

112得票13回答
创建数百万个小型临时对象的最佳实践

创建(和释放)数百万个小对象的最佳实践是什么? 我正在使用Java编写一个象棋程序,搜索算法为每个可能的移动生成单个“Move”对象,而标准搜索可以轻松生成每秒超过一百万个移动对象。 JVM GC已能够处理开发系统上的负载,但我有兴趣探索替代方法,以便: 最小化垃圾回收的开销,以及 减...

111得票16回答
Java中的垃圾回收器是什么?

我刚接触Java,对Java中的垃圾收集器感到困惑。它到底是做什么的?在什么时候开始工作?请描述一下Java中垃圾收集器的一些属性。

104得票2回答
如何请求在node.js中运行垃圾收集器?

启动时,我的node.js应用程序似乎使用了约200MB的内存。如果我让它静置一段时间,它会缩小到约9MB。 是否可能从应用程序内部执行以下操作: 检查应用程序正在使用多少内存? 请求垃圾回收器运行? 我提出这个问题的原因是,我从磁盘加载了一些文件,这些文件被临时处理。这可能会导致内...

102得票6回答
静态字段是否会被垃圾回收?

假设有一个虚构的实用程序类,仅在程序设置中使用:class MyUtils { private static MyObject myObject = new MyObject(); /*package*/static boolean doStuff(Params... params...

102得票3回答
垃圾回收器如何避免在这里出现无限循环?

考虑以下 C# 程序,我把它提交到 Code Golf 作为一个不使用循环结构的创建循环的答案:class P{ static int x=0; ~P(){ System.Console.WriteLine(++x); new P(); ...

102得票8回答
弱引用有实际用途吗?

可能重复问题: 弱引用 - 它们有多有用? 由于弱引用可以被垃圾回收器在任何时间收回,那么使用它们还有什么实际的理由吗?