Java程序占用内存太高了怎么办?

Java程序占用内存太高了怎么办?,第1张

先看下是否有内存泄露,简单的方法就是隔一段时间检查下内存,看看是否是持续上升。

然后看下资源是否可以优化,比如你加载的图片有没有resize过,尽可能减少资源的内存消耗。

游戏卡顿最主要的是FPS帧率太低,把帧率统计输出来看下。检查下UI线程里或者OpenGL线程里是否做了I/O *** 作,这个是造成卡顿的主要原因。把I/O *** 作全部放入工作线程中,UI线程只做数据读取和渲染。这样帧率就可以提高了

可以用 system(命令) 调用 DOS/Windows 命令 获取 正在使用多少 内存 (memory).

命令例子:

wmic process where name="cmd.exe" get WorkingSetSize

这里 "cmd.exe" 你可替换成 你的程序 名字。

你也可以用你的程序 进程 PID 号数 调用, 命令是:

wmic process where processid=6884 get WorkingSetSize

这里6884你可替换成 你的程序 进程 PID。

输出有2行,第二行是占用内存字节数:

WorkingSetSize

4616192

c/c++ 语言 :

system("wmic process where processid=6884 get WorkingSetSize")

system("wmic process where name=\"cmd.exe\" get WorkingSetSize")

用程序名调用时,若有多个同名程序在运行,输出的 内存数 将分行输出出来。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8167202.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-14
下一篇2023-04-14

发表评论

登录后才能评论

评论列表(0条)

    保存