-
Notifications
You must be signed in to change notification settings - Fork 844
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
官方demo内存无法回收 #361
Comments
请问一下有没有解决方案 |
请问是关闭掉app吗? |
不是,我把数据加到10000个,然后一直滑动 |
可以做一个使用和不使用fish-redux的内存对比么? |
demo地址:https://github.com/jeepc/fish-redux 不知道是不是我测试方法的问题,还是adapter本身就存在问题 |
看了下,比较并不是很合理,去掉一些额外的差异,比较下?比如展示上的差异,数据上的差异等。 |
1、展示上、数据上差异极小;2、使用adapter时,内存明显是不正常的,滚动过程中应该有上下波动,最后稳定下来,内存应该有回落 |
解决了吗 |
Goof |
我用当前的example 做了测试 将上面的getItem函数,同等为 import 'todo_component/view.dart' as todoView;
Widget getItem(Dispatch dispatch, ViewService viewService) {
return todoView.buildView(ToDoState(), dispatch, viewService);
} 使用DynamicFlowAdapter(回退到0.2.8版本) void _init(Action action, Context<PageState> ctx) {
final List<ToDoState> initToDos = <ToDoState>[];
for(int i=0; i< 10000; i++) {
initToDos.add(ToDoState());
}
...
} 结论是,使用Adapter不会降低性能。在一些复杂的场景下,可以用来优化性能。 |
DynamicFlowAdapter 会产生数组,但是一般也不会占用特别多的内存。 目前会建议使用SourceFlowAdapter,是DynamicFlowAdapter 的替代者。 1、减少列表转换。 |
如图
The text was updated successfully, but these errors were encountered: