Mirror von
https://github.com/IntellectualSites/FastAsyncWorldEdit.git
synchronisiert 2025-01-11 10:10:04 +01:00
0d18b15393
I run a fork of paper which replaces the visibleChunks and updatingChunks field for gc performance reasons - visibleChunks is updated via cloning updatingChunks, and at high chunk counts this causes gc issues due to the humongous allocation. Unfortunately the only solution is to not clone the map - which is why the field is removed. Instead of BukkitAdapter#getPlayerChunk using the visibleChunks field, it now uses a MethodHandle for PlayerChunkMap#getVisibleChunk. This method is present on spigot & paper (only protected on spigot - which is why reflection is required), and I preserve the same thread-safety it provides in my fork - so this solution will not break compatibility with craftbukkit, spigot, and paper.