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)