Why using ``@volatile``?