Double-Checked Locking Pattern
Minimize synchronization overhead for already-initialized state by checking conditions before acquiring locks.
Minimize synchronization overhead for already-initialized state by checking conditions before acquiring locks.