Home »
Java programming language
Java ThreadGroup setMaxPriority() method with example
ThreadGroup Class setMaxPriority() method: Here, we are going to learn about the setMaxPriority() method of ThreadGroup Class with its syntax and example.
Submitted by Preeti Jain, on December 24, 2019
ThreadGroup Class setMaxPriority() method
- setMaxPriority() method is available in java.lang package.
- 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() 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() method may throw an exception at the time of assigning a priority of this ThreadGroup.
SecurityException – This exception may throw when the current thread is not permitted to update this thread group.
Syntax:
public final void setMaxPriority(int prior);
Parameter(s):
- int prior – represents the new priority of this thread group.
Return value:
The return type of this method is void – it returns nothing.
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.....