Ree*_*sey 10
在这方面,CLR处理内存分配与java非常不同.它将继续增加堆大小,没有上限(除了体系结构限制).
在64位操作系统上,当针对x64时,CLR将继续允许进程分配内存,直至系统中可用的总内存.人工过程没有固定的上限.
在32位系统上,或者在针对x86时,实际上限往往在1.2到1.6 GB之间.此时,您将开始遇到内存不足异常.(理论上,它应该使用2GB,但CLR本身会占用一些空间,而它处理内存寻址的方式会导致内存不足错误发生在此范围内.)
编辑:这是一篇很好的文章,描述了在JVM和CLR中处理内存的方式的差异.我认为JVM需要使用的主要原因-Xmx是因为它不会将内存释放回操作系统.因此,它提供了一种限制程序内存消耗的方法.
| 归档时间: |
|
| 查看次数: |
713 次 |
| 最近记录: |