如果安装后没有进行设置,在 MyEclipse运行中就可能会经常出现关于内存不足的提示。
比如:MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains.
提示中也给出了解决问题的方法,把下面这句话加到eclipse的配置文件中:
-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M
但是值得注意的是,修改eclipse.ini文件,不能直接把这句话粘贴进去,而应该如下面格式所示就对了。
-vmargs
-Xms128M
-Xmx512M
-XX:PermSize=64M
-XX:MaxPermSize=128M
下面是这几个设置的一些背景知识:
1 堆(Heap)和非堆(Non- heap)内存[b]
按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员使用的;非堆就是JVM留给自己用的,所以方法区、JVM内部处理或优化所需的内存(如JIT编译后的代码缓存)、每个类结构(如运行时常数池、字段和方法数据)以及方法和构造方法的代码都在非堆内存中。
[b]2 堆内存分配
JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于 40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。因此服务器一般设置-Xms、 -Xmx相等以避免在每次GC 后调整堆的大小。
3 非堆内存分配
JVM使用-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64;由XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。
4 JVM内存限制(最大值)
首先JVM内存首先受限于实际的最大物理内存,假设物理内存无限大的话,JVM内存的最大值跟操作系统有很大的关系。简单的说就32位处理器虽然可控内存空间有4GB,但是具体的操作系统会给一个限制,这个限制一般是2GB-3GB(一般来说Windows系统下为1.5G-2G,Linux系统下为 2G-3G),而64bit以上的处理器就不会有限制了。
分享到:
相关推荐
解决MyEclipse内存不足的首要步骤是调整JVM的内存参数。这些参数通常在MyEclipse的启动配置中设置,包括初始堆大小(Xms)、最大堆大小(Xmx)以及 PermGen 空间(对于较旧版本的Java)。在MyEclipse的安装目录下,...
总结来说,解决MyEclipse内存溢出问题需要理解Java内存模型和JVM参数设置,合理分配堆内存、新生代和永久代的大小。通过监控和调整这些参数,可以有效地避免内存溢出问题,提升应用的稳定性和性能。
以下是一些解决MyEclipse内存溢出问题的方法: 1. 修改`eclipse.ini`配置文件: MyEclipse的启动配置文件`eclipse.ini`位于MyEclipse安装目录下的特定路径,例如`G:\MyEclipse8.5\Genuitec\MyEclipse 8.5`。在这个...
为了解决MyEclipse内存不足的问题,可以通过调整虚拟机内存参数来优化环境配置。以下是一些具体的步骤和建议: 1. **调整虚拟机内存参数**: - 使用命令行启动MyEclipse时,可以加入以下参数: ``` eclipse.exe ...
标题与描述概述的知识点主要集中在解决MyEclipse内存不足的问题上,这通常发生在处理大型项目或资源密集型任务时。以下是对这些知识点的详细解析: ### 修改eclipse.ini 在MyEclipse的安装目录下,存在一个名为`...
然而,随着项目规模的扩大,MyEclipse可能会遇到内存不足的问题,这将导致启动缓慢、卡顿甚至崩溃。解决这个问题的关键在于理解和优化JVM(Java Virtual Machine)内存设置。 JVM是Java程序运行的基础,它负责解析...
下面我们将深入探讨JVM参数配置以及如何解决MyEclipse内存不足的问题。 1. JVM内存模型: JVM内存主要分为几个区域:堆(Heap)、栈(Stack)、方法区(Method Area)、程序计数器(PC Register)和本地方法栈...
### MyEclipse内存不足与JVM内存管理 #### 1. 各个参数的含义 在探讨具体的参数之前,我们先来了解下JVM内存管理的基本...通过上述分析,我们可以更好地理解JVM内存管理机制以及如何解决MyEclipse内存不足的问题。
### MyEclipse内存溢出问题解析与解决策略 #### 一、问题背景 在使用MyEclipse集成开发环境(IDE)进行项目开发时,开发者可能会遇到内存溢出的问题。这通常表现为应用程序运行过程中突然出现错误提示,导致程序...
此外,合理配置JVM参数不仅可以解决MyEclipse内存不足的问题,还能提高整体应用性能。但需要注意,过大的内存分配可能导致系统资源浪费,因此需要根据实际负载情况进行精细化调整。 总之,理解并熟练运用Java虚拟机...
针对MyEclipse内存不足的问题,我们可以通过以下步骤进行原因分析及提出相应的解决办法: 1. 通过修改配置文件来增加MyEclipse的内存分配。 - 找到MyEclipse安装目录下的myeclipse.ini或eclipse.ini配置文件,打开...
#### 二、MyEclipse内存问题成因分析 1. **自动更新检查**:MyEclipse默认会在启动时检查是否有新功能或更新,这一过程会占用一定的系统资源。 2. **索引更新**:MyEclipse会定期更新项目依赖的索引,这个过程同样...
【标签】"源码"和"工具"暗示了解决内存溢出可能需要对MyEclipse的内部机制有一定了解,并可能涉及到代码级别的优化。源码可能指项目代码的优化,以减少内存占用;而工具则可能涉及使用内存分析工具,例如VisualVM或...
这篇文章将深入探讨这个问题,并提供一系列解决MyEclipse内存消耗过大的方法。 首先,针对“Quick Update error”,这是由于MyEclipse尝试自动检查并安装更新时引发的错误。为了解决这个问题,我们可以禁用...
#### 一、理解MyEclipse内存消耗与卡顿的原因 首先,我们需要了解为什么MyEclipse会出现内存消耗过大和卡顿的现象。通常来说,MyEclipse作为一个集成开发环境(IDE),会随着版本更新不断增加新功能和服务,例如...
解决MyEclipse运行项目内存溢出问题,下载后是个txt文件,里面包含了解决的步骤
### MyEclipse耗内存的解决办法 在使用MyEclipse过程中,可能会遇到占用内存过高的问题,这不仅会影响开发效率,还可能导致系统运行不稳定。针对这一情况,可以通过以下几个步骤来优化MyEclipse的内存使用: #### ...
解决flex 4.6内存不足myeclipse中无法加载设计模式 1 解决flexbuilder4无法加载设计模式内存不足的方法为先新建一java工程,再新建flex项目 2(1). 调整FlashBuilder eclipse.ini 编辑 {FlashBuilder 安装路径}/...
当运行的项目复杂度较高或同时开启多个项目时,如果物理内存不足,MyEclipse可能会因内存溢出而变得缓慢甚至无响应。 2. **工作空间垃圾文件积累**:长时间使用后,工作空间内的.metadata文件夹可能会积累大量垃圾...
【MyEclipse启动慢的解决方法】 MyEclipse是一款强大的集成开发环境,但在使用过程中,有时会出现启动缓慢的问题,这可能影响开发效率。以下是一些优化MyEclipse启动速度的方法: 1. **去除不需要加载的模块** ...