Consider using volatile and double-checked locking.