找回密码
 初始化身份识别芯片
img_loading
智能检测中
查看: 1146|回复: 14

启动游戏玩不了多久就报内存泄露

[复制链接]

战列舰长

发表于 2024-12-1 11:03:35 | 显示全部楼层 |阅读模式
Mod Bug汇报
待解决 ...
游戏版本: 0.97
Mod中文名:
Mod版本:
游戏日志:
  1. [游戏日志]
  2. 556437 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段3
  3. 558262 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段4
  4. 558262 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段6
  5. 558264 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段6B
  6. 558469 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - Renaming [campaign.xml] to [campaign.xml.bak]
  7. 558470 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - Renaming [descriptor.xml] to [descriptor.xml.bak]
  8. 558470 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - Renaming [campaign.xml.inprogress] to [campaign.xml]
  9. 558470 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - Renaming [descriptor.xml.inprogress] to [descriptor.xml]
  10. 558471 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段7
  11. 558471 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段8
  12. 558471 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 完成保存
  13. 560709 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 余辉 一个声望改变 (0.0, 0.0)
  14. 560710 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 非势力团体 一个声望改变 (0.8125, 0.0)
  15. 560710 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 雇佣兵 一个声望改变 (0.0, 0.0)
  16. 560710 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 恶魔部落 一个声望改变 (0.0, 0.0)
  17. 560710 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 the wanted 一个声望改变 (0.0, 0.0)
  18. 560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 多元居 一个声望改变 (0.0, 0.0)
  19. 560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 卢德左径 一个声望改变 (0.0, 0.0)
  20. 560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 星际帝国 一个声望改变 (0.0, 0.0)
  21. 560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 狮心卫队 一个声望改变 (0.0, 0.0)
  22. 560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 星光 一个声望改变 (0.0, 0.0)
  23. 560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 母神意志 一个声望改变 (0.0, 0.0)
  24. 560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 羊头航务局 一个声望改变 (0.0, 0.0)
  25. 560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 英仙座联盟 一个声望改变 (0.0, 0.0)
  26. 560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 难民 一个声望改变 (0.0, 0.0)
  27. 560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 黑色守望 一个声望改变 (0.0, 0.0)
  28. 560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 希弗 一个声望改变 (0.0, 0.0)
  29. 560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 the everything 一个声望改变 (0.0, 0.0)
  30. 560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 霸主 一个声望改变 (100100.09, 1713.1875)
  31. 560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 the sector 一个声望改变 (0.0, 0.0)
  32. 560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 海盗 一个声望改变 (1713.1875, 0.0)
  33. 560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 速子科技 一个声望改变 (0.0, 0.0)
  34. 560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 赏金目标 一个声望改变 (0.0, 0.0)
  35. 560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 欧米伽 一个声望改变 (0.0, 0.0)
  36. 560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 卢德教会 一个声望改变 (0.0, 0.0)
  37. 560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 拾荒者 一个声望改变 (0.0, 0.0)
  38. 560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 沉睡者 一个声望改变 (0.0, 0.0)
  39. 560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 星海集群 一个声望改变 (0.0, 0.0)
  40. 560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 地狱军团 一个声望改变 (0.0, 0.0)
  41. 560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 遗弃船 一个声望改变 (0.0, 0.0)
  42. 560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 the domain 一个声望改变 (0.0, 0.0)
  43. 560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 帝国卫队 一个声望改变 (0.0, 0.0)
  44. 560716 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 辛达强权 一个声望改变 (0.0, 0.0)
  45. 560716 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 卢德骑士团 一个声望改变 (0.0, 0.0)
  46. 564397 [Thread-10] INFO sound.O - Creating streaming player for music with id [miscallenous_main_menu.ogg]
  47. 564397 [Thread-10] INFO sound.OooO - Playing music with id [miscallenous_main_menu.ogg]
  48. 564516 [Thread-3] INFO sound.O - Cleaning up music with id [campaign_music_part_2_v28.ogg]
  49. 564516 [Thread-3] INFO sound.O - Cleaning up music with id [miscallenous_corvus_campaign_music.ogg]
  50. 564531 [Thread-7] INFO sound.O - Cleaning up music with id [miscallenous_main_menu.ogg]
  51. 564897 [Thread-10] INFO sound.O - Creating streaming player for music with id [miscallenous_main_menu.ogg]
复现步骤:
正常游戏没几分钟直接弹窗报错

游戏信息


游戏版本: 0.97a-RC11



系统信息


操作系统:Microsoft Windows 10 家庭中文版


版本:10.0.19045 暂缺 Build 19045


总可用内存:15.88G



警告:未找到游戏默认Java运行时



虚拟机参数:java.exe -XX:CompilerThreadPriority=1 -XX:+CompilerThreadHintNoPreempt -Xverify:none -XX:+AggressiveOpts -Djava.library.path=native\windows -XX:+UseShenandoahGC -XX:+DisableExplicitGC -XX:CompileCommand=exclude,com.fs.starfarer.combat.ai.O0OO::Ò00000 -XX:CompileCommand=exclude,com.fs.starfarer.api.impl.campaign.terrain.AuroraRenderer::render -XX:CompileCommand=exclude,com.fs.starfarer.combat.ai.movement.maneuvers.StrafeTargetManeuverV200000 -XX:+PrintGCDateStamps -Xloggc:jvm.log -Xms8g -Xmx8g -Xss2048k -classpath janino.jar;commons-compiler.jar;commons-compiler-jdk.jar;starfarer.api.jar;starfarer_obf.jar;jogg-0.0.7.jar;jorbis-0.0.15.jar;json.jar;lwjgl.jar;jinput.jar;log4j-1.2.9.jar;lwjgl_util.jar;fs.sound_obf.jar;fs.common_obf.jar;xstream-1.4.10.jar -Dcom.fs.starfarer.settings.paths.saves=..\saves -Dcom.fs.starfarer.settings.paths.screenshots=..\screenshots -Dcom.fs.starfarer.settings.paths.mods=..\mods -Dcom.fs.starfarer.settings.paths.logs=. com.fs.starfarer.StarfarerLauncher


堆栈初始大小(-Xms):8192m


堆栈最大大小(-Xmx):8192m




Mod信息


Mod名称 Mod版本 已启用
LazyLib 2.8b
zz GraphicsLib 1.9.0
MagicLib 1.4.6
Console Commands 2024.10.04
星海集群 1.13.1b
星际帝国 [Interstellar Imperium] 2.6.4
泰兰船包 1.3
海盗拓展 [Underworld] 1.8.3
羊头航务局[Goat_Aviation_Bureau] 1.9.10
舰船/武器拓展 [Ship/Weapon Pack] 1.15.1
重生[UNGP] 2.3.0


(以上内容由 远行星号 报错信息收集工具 自动生成,生成工具版本 1.1.2).




参照这个帖子更新了java8和vmparams之后游戏确实流畅了很多,但是总是报内存泄露需要手动保存游戏



Jre Screenshot 2024.12.01 - 10.46.29.87.png

战列舰长

 楼主| 发表于 2024-12-1 11:06:46 | 显示全部楼层
等下,虚拟机参数里面怎么会有一个表情符号

战列舰长

 楼主| 发表于 2024-12-1 11:11:57 | 显示全部楼层
奇怪,文件里面又是正常的
Desktop Screenshot 2024.12.01 - 11.11.14.10.png

势力巨擘

发表于 2024-12-1 11:41:08 | 显示全部楼层
填8192试试

点评

没用,还是会报错  详情 回复 发表于 2024-12-2 16:20

星域军阀

高级机师

发表于 2024-12-1 11:41:49 | 显示全部楼层
如果你是打开游戏后第一次加载存档就报告内存泄漏,那就是你的vmparams的内存回收参数有问题,还原回原版的参数,仅修改内存大小部分就能解决
如果你是在生涯中进行了SL,那属于正常情况,这种内存泄漏大概率是mod在插件或者每帧代码中直接通过变量形式保存了生涯中的类似舰队、星球等物件导致的,除非mod作者意识到并解决该问题,否则无法避免

点评

mod我就开了那几个,应该不至于吧。vmparams换回原版的也没用,根本开不了游戏,把jre文件也换回去才行  详情 回复 发表于 2024-12-2 16:23

战列舰长

 楼主| 发表于 2024-12-2 16:20:50 | 显示全部楼层

没用,还是会报错

战列舰长

 楼主| 发表于 2024-12-2 16:23:00 | 显示全部楼层
cjy4312 发表于 2024-12-1 11:41
如果你是打开游戏后第一次加载存档就报告内存泄漏,那就是你的vmparams的内存回收参数有问题,还原回原版的 ...

mod我就开了那几个,应该不至于吧。vmparams换回原版的也没用,根本开不了游戏,把jre文件也换回去才行

星域军阀

请校准时钟

搬运能手学院教员

发表于 2024-12-2 17:40:25 | 显示全部楼层
我想,你可以尝试一步到位更新到java23试一试
现在论坛的java8教程最好只视为游戏大版本较低时(如0951)的permsize报错解决方法,不应该再视为有效的游戏优化方法
尤其是在java8使用ShenandoahGC的一些改动,在远行星号的国际社区已经被放弃很久了,所以尽量不要再使用
论坛版本的ShenandoahGC很多人报告过错误,错误的种类还很多样,不排除是他导致的内存问题

点评

其实J23用的也是Shenandoah  详情 回复 发表于 2025-3-27 06:37
好吧,看来只有这个办法了,谢谢  详情 回复 发表于 2024-12-4 00:03

战列舰长

 楼主| 发表于 2024-12-4 00:03:26 | 显示全部楼层
Tick_Tock_Man 发表于 2024-12-2 17:40
我想,你可以尝试一步到位更新到java23试一试
现在论坛的java8教程最好只视为游戏大版本较低时(如0951)的 ...

好吧,看来只有这个办法了,谢谢

星域军阀

经理&10号罪人

学院教员

发表于 2024-12-4 02:46:27 | 显示全部楼层
Alex:代码的事你别多管(

驱逐技师

发表于 2025-3-25 21:17:46 | 显示全部楼层
这破游戏内存泄漏严重的一塌糊涂,调多少G都救不了,我每次舰队战斗两三次(哪怕模拟战)后必报内存泄漏,唯一能救的就是玩低版本+少打mod。。。

点评

升级Java 23试一试,此外过度分配会有反效果。游戏一些应用(尤其是音乐和材质图)会占用你分配内存以外的内存。因此分配过多内存会挤压这些东西所需的内存空间,造成游戏反而不稳定。 而且游戏本身与其说是内存泄  详情 回复 发表于 2025-3-27 06:40

势力巨擘

高级机师通讯记者

发表于 2025-3-27 06:37:18 | 显示全部楼层
Tick_Tock_Man 发表于 2024-12-2 17:40
我想,你可以尝试一步到位更新到java23试一试
现在论坛的java8教程最好只视为游戏大版本较低时(如0951)的 ...

其实J23用的也是Shenandoah

点评

我知道,我自己用过j8的Shenandoah,我当时回这个贴的意思是 论坛有一个使用redhat j8 Shenandoah的教程,在当时教程贴里就有许多人汇报错误,和miko在官坛早年发的正常调整过的Shenandoah不应当混为一谈 因此建议楼  详情 回复 发表于 2025-3-27 10:05

势力巨擘

高级机师通讯记者

发表于 2025-3-27 06:40:31 | 显示全部楼层
majiayi5 发表于 2025-3-25 21:17
这破游戏内存泄漏严重的一塌糊涂,调多少G都救不了,我每次舰队战斗两三次(哪怕模拟战)后必报内存泄漏,唯 ...

升级Java 23试一试,此外过度分配会有反效果。游戏一些应用(尤其是音乐和材质图)会占用你分配内存以外的内存。因此分配过多内存会挤压这些东西所需的内存空间,造成游戏反而不稳定。

而且游戏本身与其说是内存泄漏严重不如说是垃圾清理效率极低 (当然有些mod确实有内存泄漏风险),所以目前的几个主要优化例如论坛的旧Java8,还有Miko的Java23、24都是从这边入手的。我用J23分配4G都是足够的。

星域军阀

请校准时钟

搬运能手学院教员

发表于 2025-3-27 10:05:12 | 显示全部楼层
本帖最后由 Tick_Tock_Man 于 2025-3-27 10:15 编辑
Mycophobia 发表于 2025-3-27 06:37
其实J23用的也是Shenandoah

我完全同意你的意见!我自己也用过j8的Shenandoah,我当时回这个贴的意思是
论坛有一个使用redhat j8 Shenandoah的“教程”(用户id为wuyi或其他类似id),在当时“教程”贴里就有许多人汇报错误,和miko在官坛早年发的正常调整过的Shenandoah不应当混为一谈。同时,在发这个回复的时点,miko已经快把j24弄出来了,j8在英文论坛也已经是过期物
因此出于楼主运行环境的问题,审慎建议楼主使用正规、正常开发者的后续产品

点评

呜啊你回复这么正式让我好难为情www 我只是打算卖个萌而已。也感谢时钟佬一直以来的排查回答问题  详情 回复 发表于 2025-3-28 06:09

势力巨擘

高级机师通讯记者

发表于 2025-3-28 06:09:13 | 显示全部楼层
Tick_Tock_Man 发表于 2025-3-27 10:05
我完全同意你的意见!我自己也用过j8的Shenandoah,我当时回这个贴的意思是
论坛有一个使用redhat j8 Shen ...

呜啊你回复这么正式让我好难为情www

我只是打算卖个萌而已。也感谢时钟佬一直以来的排查回答问题

本版积分规则

Archiver|手机版|小黑屋|远行星号中文论坛

GMT+8, 2025-4-11 07:06

Powered by Discuz! X3.5

© 2001-2077 Tencent Cloud | Durian Software Studio

快速回复 返回顶部 返回列表