- concurrent and parallel are orthogonal terms. All four combinations are possible.
- All modern jvm will be the precise as if they are not precise then they will not be able to move stuff and that will lead to fragmentation.
- So the availability of safe points is crucial.
- Compiler injects these safe points.
- If there are not well placed safe points, threads will have to wait for others to reach safe points so that GC cab be started.
-At these safe points, GC will issue an stop-the-world.