常见类型传奇引擎卡死、内存溢出的表现与解决办法
当我们使用GOM,GEE,4K,HGE,BLUE等等这几款引擎的时候,虽然平时可能没什么问题,但是一旦遇到这种内存溢出,几乎所有GM都会束手无策。
其实这都是一些开发作者写脚本不严谨,大量调用CALL,高频率读写文本造成的,可能说这些有的小白不太明白,就是说角色游戏过程中的各种触发,会使用到读取写入某些数据到txt文本,其实这也没什么,但是当你每次出刀,每次使用魔法技能的时候都调用这些,你感觉正常吗?一台服务器的每秒的处理速度是有限的,当你测试的时候可能感觉不出来,一旦游戏里人多的时候,就会出现这种引擎内存飙升卡死的情况。
当你的传奇引擎M2经常卡死,你就需要注意了,打开你的任务管理器,锁定引擎M2的进程,持续观察,最好是每间隔5分钟就记录一次数据,看看它的内存是不是一直升不会降低(回收),呵呵,恭喜你,等着卡死吧.
这里说明一下内存溢出的概念:很多小白GM经常说的一句话就是我的服务器64G内存,绝对够用了,其实并不是服务器内存不够用了,程序启动的时候会向服务器申请内存,现在是这个M2程序的内存爆了,处理数据过多,又处理不完,不断累积,当达到一个临界值的时候,直接卡死。
解决方法:排查所有攻击触发,魔法触发,定时器触发,只要是跟读写有关的东西统统都要排查。
新手紧急情况下,可架设单机,然后清空QM,QF文本,然后一个一个的功能依次添加,每添加一个功能,观察一会内存情况,发现异常即锁定了问题所在。