If a field is used for a reference, like
private Field myService
and methods are generated for this dynamic reference, the field must be declared volatile. Otherwise updates to the field are not visible to the threads calling this component.
If no methods are generated and the reference is dynamic, a warning should be generated if it is not volatile.