Two threads that concurrently attempt to increase the values `p.x` and `p.y`, respectively, of an object `p` of type Point. The shared state can be splitted into two: one thread having writing permission to `p.x` and the other thread to `p.y`.