Memory Model Considerations - Double-Checked Locking Pattern | OneNoughtOne