Java ThreadGroup setMaxPriority()方法

ThreadGroup類的setMaxPriority()方法用於設置組的最大優先順序。

語法

public final void setMaxPriority(int pri)

參數

  • pri:這是線程組的新優先順序。

示例

class NewThread extends Thread
{
    NewThread(String threadname, ThreadGroup tgob)
    {
        super(tgob, threadname);
    }
    public void run()
    {
        for (int i = 0; i < 10; i++)
        {
            try
            {
                Thread.sleep(10);
            }
            catch (InterruptedException ex) {
                System.out.println("Thread " + Thread.currentThread().getName() + " interrupted"); }
        }
        System.out.println(Thread.currentThread().getName() + " [priority = " +
           Thread.currentThread().getPriority() + "]");
        System.out.println(Thread.currentThread().getName()+" finished execution");
    }
}
public class ThreadGroupSetPriorityExp
{
    public static void main(String arg[]) throws InterruptedException,
        SecurityException, Exception
    {
        // creating the thread group
        ThreadGroup tg1 = new ThreadGroup("Parent threadGroup");
        ThreadGroup tg2 = new ThreadGroup(tg1, "child threadGroup");
        tg1.setMaxPriority(Thread.MAX_PRIORITY-3);
        tg2.setMaxPriority(Thread.MIN_PRIORITY);

        // creating a thread
        NewThread t1 = new NewThread("Thread-1", tg1);
        t1.setPriority(Thread.MAX_PRIORITY);
        System.out.println(t1.getName() + " starts");
        t1.start();

        // creating another thread
        NewThread t2 = new NewThread("Thread-2", tg2);
        t2.setPriority(Thread.MAX_PRIORITY);
        System.out.println(t2.getName() + " starts");
        t2.start();
    }
}

執行上面示例代碼,得到以下結果:

Thread-1 starts
Thread-2 starts
Thread-1 [priority = 7]
Thread-2 [priority = 1]
Thread-2 finished execution
Thread-1 finished execution

上一篇: Java線程組 下一篇: Java關閉掛鉤(shutdown hook)