v1.3.0
v1.3.0 - dHash 分桶索引性能优化
重大性能提升
15000 张照片的 dHash 扫描从"卡死"变为"秒级完成":
- 分桶索引算法: 将 64-bit hash 拆为 8x8-bit 多级索引,
候选比较次数从 O(n^2) 约1.12亿降至约50万次, 速度提升约200倍 - 消除双重 openInputStream: 复用 MediaStore 已知宽高,
节省15000次跨进程文件打开 - 并发控制: 信号量限制同时解码数(默认16), 避免 OOM
- 不阻塞主线程: 分桶+汉明距离比较在 Dispatchers.Default 运行
- 支持取消: 定期 yield(), 用户可随时中断扫描
其他改进
- 批量计算 computeBatch() 使用结构化并发
- 协程取消时优雅退出, 不误报错误
- 默认并发上限16(平衡速度与内存)