nwjs内存泄漏问题

nwjs我写了个软件,因为经常要用到window.open来打开页面发现内存会越来越多的,竟然有内存泄露的问题

为了确定是不是内存真的有这样的问题,我还特意写了测试代码

let sn = 0, win = null;
setInterval(function()
{
	sn++;	
	
	if(sn % 5 == 0){
		if(win) win.close(true);
		win = null;
		nw.Window.open("http://www.web-jia.com", (w)=>{
			win = w; //不过这行代码有时会出现问题的,w竟然有时会没有值太奇怪了,关键是窗口还是打开的
		});
	}
}, 1000);

上面的是循环打开和关闭窗口有内存泄露

然后我把上面的代码改成不关闭更改地址竟然还是一样的

let sn = 0, win = null;
setInterval(function()
{
	sn++;	
	
	if(sn % 5 == 0){
		if(win){
			win.window.location.href = "http://www.web-jia.com";
		}else{
			nw.Window.open("http://www.web-jia.com", (w)=>{
				win = w;
			});		
		}

	}
}, 1000);

因为我的客户代码要一直运行的,感觉这么不靠谱呢,竟然有这样的问题内存泄露

没办法已经用了,只能将就的使用了

想了个简单的办法定时去检测内存,如果内存超过一定值就关闭
nw.App.closeAllWindows()

内存查看用的是下面的函数
process.memoryUsage()

改成这样以后总算可以正常的使用了


标签: nw.js(6)
友情链接
轻松育儿世界奇观
苏ICP备16066217号-2