Async Pack Scan
Important Note
As of Minecraft version 1.20.5, this mod likely is no longer required. However, interactions between different modifications may still cause issues, so I continue to update it. If you don't experience sudden performance drops, you can safely remove this mod.
Performance Problem Solution
In the standard version of Minecraft, the process of updating the resource pack list is performed synchronously, scanning all possible sources simultaneously. Usually this doesn't cause issues, but in the resource pack organizer interface, this scanning is triggered every time the window size changes and repeats every twenty game ticks.
When other mods (such as Respackopts) interfere with the scanning process and even slightly increase its duration, this leads to significant delays and makes the screen nearly unusable when working with multiple packs.
How the Mod Works
This mod solves the problem by moving computations to a separate thread and scheduling scanning tasks on corresponding events, which significantly improves perceived performance. Since the original game code is designed for synchronous execution, crashes may occur in rare cases, but during testing the mod demonstrated stable operation.