Instance Variable Analysis
Unsynchronized accessors
- variable never has illegal transient value when other methods are executed
- variable must be atomically assignable
Unsynchronized updates
- values of variable remain legal across all possible interleavings of all possible methods
- no special synchronized actions need to be performed when the variable changes to particular state