Java null check
concurrency, java, null
Solution
Is it possible to for thread2 to rewrite object reference after NullPointerException check ?
Absolutely - it could change the value of `object` while the `play()` method is executing, if that's what you mean. That wouldn't cause an error in itself.
Note that without synchronization or other memory barriers, thread2 could change the value of `object` without thread1 noticing for an indeterminate period of time.
It's hard to say what you ought to do, without any other knowledge of the bigger aim of the code.
Problem
I have one `thread1`: ``` if(object != null){ object.play(); } ``` and another `thread2` that can write `null` into `object` reference at any time. I will run these threads at same time. I know `thread2` can rewrite `object` reference after the `null` check and that will throw `NullPointerException`. Is it possible for `thread2` to rewrite `object` reference after `NullPointerException` check?