我使用HttpRequest进行游戏,发现内存在任何请求后都没有清理。 经过一段时间Chrome中的运行选项卡将崩溃。由于HttpRequest导致内存泄漏直至崩溃
以下是一些测试代码。将大文件放入'web'目录并相应地在代码中设置URL。
import 'dart:async';
import 'dart:html';
void main() {
const PATH = "http://127.0.0.1:3030/PATH_TO_FILE";
new Timer.periodic(new Duration(seconds:10), (Timer it)=>getString(PATH));
}
void getString(String url){
HttpRequest.getString(url).then((String data){
});
}
只是复查,内存泄漏仍然存在:
- 当前版本:24275
- 使用持续时间:30秒
- 使用的文件:铬\ chrome.dll.pdb复制到web目录的当前项目
- 在Windows 64bit以及Linux 64bit下试用
内存泄漏只存在于Dartium中。当我将代码编译为JS并在Firefox中运行时,内存使用量将高达3.5 GB,并保持在那里。
这真的是一个错误还是我有什么问题?
我对你的文章做了一个相当大的编辑,删除了几个永远不会被调用的函数,并且使得所有的行都适合。据我所知,这抓住了你想分享的一切...... –
无法用Dartium发射或JS发射(Firefox)重现。 – MarioP
我重新检查了代码,并在我的文章中添加了一些其他信息。 –