Jad*_*mas 3 java performance memory-leaks
Java 程序可能非常消耗内存。例如,一个Double对象有 24 个字节:8 个字节的数据和 16 个字节的 JVM 施加的开销。一般来说,表示原始类型的对象非常昂贵。
Java 标准库中的任何集合都会发生同样的情况。甚至还有一些违反直觉的事实,例如 aHashSet比 a 更需要内存HashMap,因为 aHashSet包含HashMap内部 ( http://docs.oracle.com/javase/7/docs/api/java/util/HashSet.html )。
在高性能设置中对数据进行建模和对象委派时,您能否提出一些建议,以便减轻 Java 的这些“弱点”?
我用来减少内存的一些技术:
new String处理旧的大绳子。array[x|y<<4]对于 16xN 数组。StringBuilder选择初始容量,以防止在典型情况下进行内部重新分配。
StringBuilder而不是字符串连接,因为编译后的类文件使用new StringBuilder()没有初始能力来连接字符串。| 归档时间: |
|
| 查看次数: |
4621 次 |
| 最近记录: |