不知道是不是发现filelistview的一个bug
如果点击一个按钮,创建filelistview,再通过rtgui_view_destroy(RTUGI_VIEW(filelistview)) 删除(编程指南的例子中这么写的),好像并没有释放占用的内存空间,多按几次之后,系统崩溃。如果直接调用rtgui_filelist_view_destroy(filelistview)就没问题 是的,多谢反馈。这个filelist_view对象实现得有些问题,应该把destroy实现到对象destructor函数中的。 好像filelistview控件在某处申请了内存没有释放,在浏览文件夹的过程中,我发现每次浏览一屏文件,list_mem()都显示内存上涨(>1kB),并且不释放,这样浏览次数不用很多,系统内存耗尽就崩溃了。我试着跟踪filelistview部分代码,但是找不到,希望老大们费心找找看是不是一个bug 回复【2楼】zyalxl
好像filelistview控件在某处申请了内存没有释放,在浏览文件夹的过程中,我发现每次浏览一屏文件,list_mem()都显示内存上涨(>1kb),并且不释放,这样浏览次数不用很多,系统内存耗尽就崩溃了。我试着跟踪filelistview部分代码,但是找不到,希望老大们费心找找看是不是一个bug
-----------------------------------------------------------------------
确实是bug,当前这样写法,需要调用rtgui_filelist_view_destroy(filelistview);释放。这两天进行修正(构造一个destructor函数,把原来rtgui_filelist_view_destroy部分内容放到这个destructor函数中做析构)。
页:
[1]