v0.2.0
这次更新实装了使用 rayon 实现的并行加载和卸载字体。程序会并行处理打开的每个字体文件、文件夹和压缩包(解压),然后并行加载所有字体文件。
由于加载字体本身其实并不占用 CPU,因此默认线程池大小设定为 CPU 线程数 ×4。
根据测试,加载速度有明显的提升,而卸载本身就很快了,并行后速度变化不大。以“梦源黑体/宋体”为例,这两个字体各包含 27 个 24/37 MB 的 ttc 文件,从文件夹加载时,用时从 7-10s 提升到 2-3s,不过无论是否使用并行卸载用时仍然是 1-2s。
Commits
- [
a25d01dc04] - build: bump version (@TransparentLC) - [
f25d7504c9] - build: 添加 Clippy 检查 (@TransparentLC) - [
9e34db6e61] - docs: 添加 Clippy 检查 (@TransparentLC) - [
4b1fe1f524] - fix: tar 压缩包的扩展名判断 (@TransparentLC) - [
0d7cbcecc0] - perf: 使用 rayon 并行加载和卸载字体 (@TransparentLC) - [
0de024a086] - style: make clippy happy (@TransparentLC)
https://github.com/TransparentLC/fontloader/actions/runs/23085938022
Full Changelog: v0.1.2...v0.2.0