非常简单的代码,即使静态页面放在那里,adb shell查看内存使用情况,发现jse进程的内存一直在小幅的上涨,APP运行十几个小时候后,直接被系统kill了
- 发布:2022-06-24 15:52
- 更新:2022-11-02 16:25
- 阅读:875
小农 (作者)
半小时前后,内存占用从15.9MB涨到了18MB,只是简单的用uniapp空模板创建的项目,简单修改了下页面代码如下:
<template>
<view class="content">
<view class="text-area">
<text class="title">{{title}}{{i}}</text>
</view>
<image class="logo" v-show="i % 2 == 0" src="/static/logo.png"></image>
</view>
</template>
<script>
export default {
data() {
return {
title: 'Hello',
i: 0
}
},
onLoad() {
let _this = this;
setInterval(function() {
_this.change();
}, 1000);
},
methods: {
change() {
this.i++;
}
}
}
</script>
小农 (作者)
可以答复一下么?
-
小农 (作者)
回复 DCloud_Android_DQQ: 等了两个半月才回复。。。目前测试安卓6、安卓7都会这样,不用任何复杂操作,就如实例代码,大概运行一两天就会挂掉
2022-09-18 22:55
遇到同样的问题, 离线打包应用的运行内存中, 应用包名:jse 的进程内存占用会一直持续增加不会释放, 直到系统内存耗尽app进程被系统kill.
-
回复 DCloud_Android_DQQ: rk3568, Android11. 调试后发现问题可能出在5+的IO文件操作上, jse进程会不断增长, 虽然缓慢但是不会释放, 像我遇到的长时间运行使用的场景下, 几天后就必定会引起OOM. 正在把底层文件操作改为android原生, 花在内存优化上的时间大大超出了预期.
2022-09-15 14:04
-
回复 小农: 这个问题排查了下jse进程中的代码没有泄露,js heap也是正常的,我试了下interval运行一段时间后停掉在等待一段时间内存占用会下降到正常水平,这个问题初步断定和v8的内存管理和gc回收机制有关
2022-11-12 18:33
小农 (作者)
已经贴出来了,截图里面两个进程的内存都是在上涨的
2022-06-24 17:17