Utilizes the BukkitScheduler to run chunk unload tasks.
Tasks are scheduled within the game loop, which introduces some overhead and can limit concurrency.
Uses a scheduler to repeatedly check and unload chunks.
New Approach:
Uses virtual threads to handle chunk unload tasks.
Virtual threads are lightweight, allowing for many more concurrent tasks without significant performance penalties.
Runs tasks asynchronously, removing the dependency on the game loop scheduler.
Why the New Approach is Better:
The new approach using virtual threads offers lightweight concurrency and reduced overhead compared to the old scheduler-based method, simplifying the code and improving scalability for handling chunk unloading in Minecraft.