ZGC is a scalable and low-latency GC, performing all expensive work concurrently and without stopping the execution of application threads. It's designed to accommodate heap sizes between 8MB and 16TB.

  • Enabled with -XX:+UseZGC.
  • The number of threads used for concurrent work is set with -XX:ConcGCThreads, and defaults to -XX:ParallelGCThreads / 4.
  • -XX:+ZUncommit toggles uncommitting unused memory (defaults to +).
  • -XX:ZUncommitDelay sets the number of seconds before unused memory is considered eligible for uncommit.