2016-08-16 50 views
-2

如何爲JAVA上的不同線程設置不同的優先級? 讓我們假設我有三個線程A,B,C ..並且我希望A具有高優先級。 如何在每種情況下設置優先級值?我可以得到一個示例代碼嗎?如何在java中爲多個線程設置優先級

+0

'Thread.setPriority(Thread.MAX_Priority);' – sidgate

+1

Google首先在SO上提問之前 – Gearon

回答

0

您可以在線程對象上調用Thread.setPriority(int)

的值必須Thread.MIN_PRIORITYThread.MAX_PRIORITY每個線程之間

1

具有優先級。優先級由1到10之間的數字表示。在大多數情況下,線程調度器根據線程的優先級調度線程(稱爲搶先調度)。

有在Thread類中定義的3個恆定的工作重點:

  • public static int MIN_PRIORITY
  • public static int NORM_PRIORITY
  • public static int MAX_PRIORITY

可以按如下方式使用它:

public static void main(String args[]){ 
    Test t1 = new Test(); 
    Test t2 = new Test(); 
    t1.setPriority(Thread.MIN_PRIORITY); 
    t2.setPriority(Thread.MAX_PRIORITY); 
    t1.start(); 
    t2.start(); 
} 

但不能保證,因爲它取決於JVM規範選擇哪種調度。

閱讀更多here