![]() |
1
0
你应该这样做。现代垃圾收集器针对创建一堆短期对象的用例进行了大量优化。这是因为JVM的垃圾收集器(事实上,现在大多数垃圾收集器) 世代 。一代垃圾收集器运行的前提是,系统中创建的大多数对象要么(A)寿命极短,要么(b)寿命超长。 垃圾收集器中至少有两个独立的代。为了简单起见,我假设只有两个( This 似乎表明有几个,但那个页面也相当旧)
因此,直接回答你的问题:尽情地创建短命的对象,并相信像Java这样的高级语言足够聪明,可以用你的代码做一些聪明的事情。如果您后来发现(通过评测和基准测试工具)某个特定的热代码路径是一个瓶颈,那么(而且只有到那时)您才能讨论切换到较低级别的构造并消除分配。但现在这样做还为时过早。 相关问题: |