With 1.13, the idea of accessing chunks async is going to have to be supported with the push towards thread safe chunk access mojang has done. This commit changes timings to always thread check at start and stop timings and only mutate state on main thread. This makes startTimingIfSync pointless, but I'm just going to leave it as is. Timings will no longer complain when used async, it just will not do anything. Further concurrency issues have been addressed with creating timings handlers that may of overall been an issue for any handler that might of been created async (happened even for things that only timed sync) with that, the 'protected' concept of handlers has been removed, and 'plugin' vs 'safe' handlers are now the same. Got rid of some guava functions in favor of java 8 real stuff now too.
141 KiB
141 KiB