In a priority based scheduling, Threads with lower priority get
lesser time for execution than higher priority threads.
If a lower priority thread performs a long running computation, it
may happen that this thread does not get enough time to finish its
computations just in time. In such a scenario, the tread with lower
priority would starve. It will remain away from the threads with
higher priority
https://medium.com/javarevisited/starvation-of-threads-in-java-e3d6bcfeb770