觅风论坛
标题:
易语言的XML树的取属性个数存在内存泄露BUG
[打印本页]
作者:
webyew
时间:
昨天 17:56
标题:
易语言的XML树的取属性个数存在内存泄露BUG
本人最近用易语言开发一款小软件,编写完成后发现内存降不下来。经过几天的排查,发现易语言官方自带的XML树,其下的“取属性个数”函数存在内存泄露BUG。
XML文件体积小时,内存泄露并不明显;但是当我用几MB级别甚至更大的XML文件去试时,现象就暴露出来了。
注意:担心一些坛友误认为是“导入”函数导致的,其实不是,XML树结构在退出函数时,析构函数是会自动释放内存的,不需要手动释放。
复现步骤:(XML文件已放在附件)
.版本 2
.支持库 EXMLParser
.子程序 _按钮1_被单击
.局部变量 i, 整数型
.计次循环首 (2, i)
func ()
.计次循环尾 ()
.子程序 func, 逻辑型
.局部变量 xml树, XML树
.局部变量 i当前error节点属性个数, 整数型
.局部变量 i, 整数型
.局部变量 b成功拿到当前error节点的属性, 逻辑型
.局部变量 iErrors子节点数, 整数型
.如果 (xml树.导入 (“d:/aaa.xml”))
.否则
返回 (假)
.如果结束
.如果 (xml树.取子节点数 (“results/errors”, iErrors子节点数))
.否则
返回 (假)
.如果结束
.计次循环首 (iErrors子节点数, i)
i当前error节点属性个数 = xml树.取属性个数 (“results/errors/@” + 到文本 (i), b成功拿到当前error节点的属性)
.计次循环尾 ()
返回 (真)
复制代码
欢迎光临 觅风论坛 (https://www.eyyba.com/)
Powered by Discuz! X3.4