Java如何設定執行緒的優先順序?

2019-10-16 22:27:27

在Java程式設計中,如何設定執行緒的優先順序?

以下範例如何使用setPriority()方法來設定執行緒的優先順序。

package com.yiibai;

public class SettingPriority {
    public static void main(String[] args) throws Exception {
        Thread thread1 = new Thread();
        Thread thread2 = new Thread();
        Thread thread3 = new Thread();
        thread1.setPriority(Thread.MAX_PRIORITY);
        thread2.setPriority(Thread.NORM_PRIORITY);
        thread3.setPriority(Thread.MIN_PRIORITY);
        thread1.start();
        thread2.start();
        thread3.start();
        thread1.join();
        thread2.join();
        thread3.join();
        System.out.println("The priority has been set. Now get priority : ");
        System.out.println("thread1 priority = " + thread1.getPriority());
        System.out.println("thread2 priority = " + thread2.getPriority());
        System.out.println("thread3 priority = " + thread3.getPriority());
    }
}

上述程式碼範例將產生以下結果 -

The priority has been set. Now get priority : 
thread1 priority = 10
thread2 priority = 5
thread3 priority = 1