- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将我的应用程序部署到 Tomcat,但未能成功。我不断地得到 OutofMemoryError permgen 空间。我尝试了各种命令行开关(在 stackoverflow 上搜索了与此相关的不同问题),如 -XX:MaxPermSize、-XX:PermSize、-XX:+CMSClassUnloadingEnabled、-XX:+CMSPermGenSweepingEnabled
我将 permgen 大小设置为 64、128、256、512,但它们都不起作用。
有趣的是,当我收到错误时,我在任务管理器中看到 java 进程只占用了大约 300mb 内存。我将 -Xms 作为 1024m 传递,但内存消耗仍然在 300mb 左右。
正在寻找可能是什么原因的意见?
我的系统详细信息:戴尔 Latitude 5420赢 XP 32 位4 GB 内存
最佳答案
当您说“不断”时,您的意思是在您连续完成几次重新部署之后?如果是,那么这是 Tomcat 的一个众所周知的缺陷,您对此无能为力。增加 perm gen 空间只会延迟不可避免的事情。
原因是反射会动态创建类,这些类最终位于 perm gen 空间中,永远不会被回收。因此得名“perm gen”——这是垃圾收集器不接触的永久代。
守恒定律告诉您,如果您的容量有限,并且只添加而不删除,您最终会耗尽容量。这就是发生在你身上的事情。
关于java - Tomcat:传递 -XX:MaxPermSize 没有明显效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7686461/
通常当我请求线程转储时,系统性能不佳的症状很容易解释;也就是说,通常我会看到许多线程显然正在等待一个已被获取但未被另一个释放的监视器。 在这种情况下,我有很多线程在等待监视器 (0x965ad100)
C:\Users\shagy\Desktop\3RD YEAR 2ND SEMESTER\SPM\Newfolder\SPM-SMS>npm start npm ERR! path C:\Users\
我是一名优秀的程序员,十分优秀!