2 months ago
—
2 months, 1 week ago7 of 7
Tip Reveddit Real-Time can notify you when your content is removed.
your account history
Tip Check if your account has any removed comments.
view my removed comments you are viewing a single comment's thread.
view all comments


No. Minecraft is not the biggest system that needs to deal with complicated concurrency problems. This is like one of the most common headaches in any high performance system and there's a dozen different tools to work around concurrency. Just randomly: locks/mutexes, event bus patterns (which Minecraft already uses), messaging channels, promises/callbacks (also already used in Minecraft), etc. This type of problem plagues high concurrency systems (databases, distributed systems, gpus, etc) basically everywhere. It's not unique to Minecraft in any way really.
I'd imagine the biggest is either some really ancient financial processing backend, an operating system, or a crazy distributed computing platform.
Hell, running a deterministic system like Redstone asynchronously for performance is LITERALLY what threads are designed to do. It's just a finite state machine running in a scripting language of blocks
lol i'm not suggesting parallelizing redstone, just move it to a different single thread. parallelize the expensive task of computing redstone and the expensive task of running main thread updates.
It is both running in a parallel thread and not running synchronously within the main thread.
No, but mc is one of the biggest. And most games or apps arent as complex. And rendering is way more different and niche than db manipulation
It's nowhere near as big or as pervasive as a lot of these systems, and many of them are dramatically more complicated and niche. Minecraft is complicated but some enterprise codebases have like 30 years of a hundred people writing code to them. An easy example is like android or the Linux source code. Both are orders of magnitude more complicated and bigger than Minecraft. They both also do dramatically more complicated and layered things with graphics and rendering loops. Minecraft is tiny compared to these systems. I bet Android's rendering subsystems alone are 10x more complicated than all of Minecraft.