异步数据包扫描

异步数据包扫描

修复更换资源包时的延迟问题

杂项

在原生Minecraft中,资源包列表的刷新通过同步扫描所有可能来源来完成。
通常情况下,这不成问题,但在资源包管理界面中,每当界面调整大小或每二十个游戏刻时,都会执行此扫描。
如果另一个模组(例如respackopts)介入了包扫描并稍微延长了其执行时间,这会导致严重的卡顿尖峰,并在使用多个资源包时使界面几乎无法使用。
本模组通过将这一计算任务移至另一个线程,并改为在这些事件上调度扫描任务来修复此问题,从而显著提升感知性能。
由于原生代码设计为同步执行,这可能在极端情况下引发崩溃等问题,但根据我的测试,它运行得足够稳定。