where we are calling getException() and seeing a null value. Because we access these without synchronization, we need to use volatile.