Java Multithreading - Thread-Priorität

Kann jemand erklären, wie Thread-Priorität in Java funktioniert. Die Verwirrung hier ist, wenn Java die Implementierung des nicht garantiertThread nach seiner Priorität ist dann, warum das so istsetpriority() Funktion verwendet für.

Mein Code lautet wie folgt:

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...");
    }
}

Selbst wenn ich im obigen Programm die Priorität ändere, sehe ich keinen Unterschied in der Ausgabe. Auch eine Echtzeitanwendung, wie Thread-Priorität verwendet werden kann, wäre von großer Hilfe. Vielen Dank.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage