mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2025-07-05 11:32:53 +00:00

We now track whether a tile is enqueued or not via an atomic boolean on the block entity itself, rather than using a hash set. This is significantly faster (>10x). This is mostly intended for monitors, as they're the only peripheral likely to call TickScheduler.schedule lots of times (rather than modems, which just invoke it when opening/closing a channel[^1])[^2]. This change is enough to allow me to update 120 monitors each tick without any major tearing. [^1]: GPS does do this on each gps.locate call, so it will help there, but modems are typically limited by other computers sending messages, not peripheral calls themselves. [^2]: Note that montitors implement their own change tracking, so still only call this once per tick. But it's enough to introduce some latency!