volatile is one of those Java keywords people pretend to understand. Not because it’s especially complicated. Mostly because most Java developers rarely need to write low-level concurrency code ...