Is this different from lazy-val-double-checked-locking, and if so, how and why?