SpineViewer icon indicating copy to clipboard operation
SpineViewer copied to clipboard

关于重复模型的改进

Open wefcdse opened this issue 3 months ago • 2 comments

不是很常用,所以不改也就算了 1 重复模型的缓存 这个已经做好了 https://github.com/wefcdse/SpineViewer/commit/cb8a5e97467ab1c777f16ff90f1d4961efbcd9dd 我测试的应该对性能没有什么影响。对有大量重复模型的场景可以加快很多加载速度并降低显存和内存占用。

2 重复模型的删除 很奇怪的bug,当出现很多个(至少100个)重复模型的时候,如果用移除来移除而不是用移除全部来移除速度会特别慢,并且同时内存占用快速提高。 这个大概影响不大而且改起来可能麻烦所以无所谓。

wefcdse avatar Oct 02 '25 06:10 wefcdse

第2个可能是我listview没开虚拟化导致的,因为之前开虚拟化的时候UI上面显示同步出过问题,所以手动设置不启用了,所以列表项很多的时候容易卡,而且数据源还是个带锁的容器对象,所以多少有点尚未开发的bug(

逐项移除和移除全部走的是不一样的逻辑应该,移除全部直接用的clear

ww-rm avatar Oct 02 '25 07:10 ww-rm

这个很奇怪的地方在于不是重复模型的话就不怎么卡,比如我加载了模型AAAA...AA 100个就卡了,但是ABABABAB...AB 200个反而就不卡了。所以很奇怪()

wefcdse avatar Oct 02 '25 07:10 wefcdse