Multihilo de Java - prioridad de hilo

¿Alguien puede explicar cómo funciona la prioridad de hilo en java. La confusión aquí es si Java no garantiza la implementación delThread De acuerdo con su prioridad, entonces ¿por qué es estosetpriority() función utilizada para.

Mi código es el siguiente:

public class ThreadSynchronization implements Runnable{

    public synchronized void run() {
        System.out.println("Starting Implementation of Thread "+Thread.currentThread().getName());
        for(int i=0;i<10;i++)
        {
            System.out.println("Thread "+Thread.currentThread().getName()+" value : "+i);
        }
        System.out.println("Ending Implementation of Thread "+Thread.currentThread().getName());
    }

    public static void main(String[] args) {
        System.out.println("Program starts...");
        ThreadSynchronization th1 = new ThreadSynchronization();
        Thread t1 = new Thread(th1);
        t1.setPriority(1);
        synchronized(t1)
        {
            t1.start();
        }

        ThreadSynchronization th2 = new ThreadSynchronization();
        Thread t2 = new Thread(th2);
        t2.setPriority(9);
        synchronized (t2) {
            t2.start(); 
        }

        System.out.println("Program ends...");
    }
}

En el programa anterior, incluso si cambio la prioridad, no encuentro ninguna diferencia en la salida. También sería de gran ayuda una aplicación en tiempo real de cómo se puede usar la prioridad de hilos. Gracias.

Respuestas a la pregunta(5)

Su respuesta a la pregunta