threadgroup
ThreadGroup类的setMaxPriority()方法 (ThreadGroup Class setMaxPriority() method)
setMaxPriority() method is available in java.lang package.
setMaxPriority()方法在java.lang包中可用。
setMaxPriority() method is used to assign a maximum priority of this thread group and there is no effect on higher priority threads already exists in this ThreadGroup.
setMaxPriority()方法用于分配此线程组的最大优先级,并且对该线程组中已经存在的更高优先级的线程没有影响。
setMaxPriority() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
setMaxPriority()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
setMaxPriority() method may throw an exception at the time of assigning a priority of this ThreadGroup.
在分配此ThreadGroup的优先级时, setMaxPriority()方法可能会引发异常。
SecurityException – This exception may throw when the current thread is not permitted to update this thread group.
SecurityException-如果不允许当前线程更新此线程组,则可能引发此异常。
Syntax:
句法:
public final void setMaxPriority(int prior);
Parameter(s):
参数:
int prior – represents the new priority of this thread group.
int Prior –表示此线程组的新优先级。
Return value:
返回值:
The return type of this method is void – it returns nothing.
此方法的返回类型为void –不返回任何内容。
Example:
例:
// Java program to demonstrate the example
// of void setMaxPriority(int prior) method of ThreadGroup
public class SetMaxPriority implements Runnable {
public static void main(String[] args) {
SetMaxPriority max_pri = new SetMaxPriority();
max_pri.setPrio();
}
public void setPrio() {
try {
// Create two thread group and the named are base
// and derived
ThreadGroup base = new ThreadGroup("Base ThreadGroup");
ThreadGroup derived = new ThreadGroup(base, "Derived ThreadGroup");
// By using setMaxPriority() method is to set the
// maximum priority for both the thread group
// 7 for base and 5 for derived thread group
base.setMaxPriority(7);
derived.setMaxPriority(5);
// create two threads
Thread th1 = new Thread(base, this);
Thread th2 = new Thread(derived, this);
//By using getName() method is to retrieve the
// name of the thread th1
System.out.println(th1.getName() + " " + "begins.....");
// By using start() method is to start its execution
// of thread th1
th1.start();
// By using getName() method is to retrieve the
// name of the thread th2
System.out.println(th2.getName() + " " + "begins.....");
th2.setPriority(10);
// By using start() method is to start its execution
// of thread th2
th2.start();
// By using join() method is to wait the current
// thread till complete execution of another
// thread
th1.join();
th2.join();
} catch (InterruptedException ex) {
ex.printStackTrace();
}
}
// Override run()
public void run() {
for (int k = 0; k < 100; ++k)
++k;
System.out.println(Thread.currentThread().getName() + " " + "ends.....");
}
}
Output
输出量
Thread-0 begins.....
Thread-0 ends.....
Thread-1 begins.....
Thread-1 ends.....
翻译自: https://www.includehelp.com/java/threadgroup-setmaxpriority-method-with-example.aspx
threadgroup