Priority and execution order of Java threads
•
Java
Priority overview
public final void setPriority(int newPriority);
public final int getPriority();
Use priority
Example 1
package ch14;
public class FirstThreadInput extends Thread
{
public void run()
{
System.out.println("调用FirstThreadInput类的run()重写方法"); //输出字符串
for(int i=0;i<5;i++)
{
System.out.println("FirstThreadInput线程中i="+i); //输出信息
try
{
Thread.sleep((int) Math.random()*100); //线程休眠
}
catch(Exception e){}
}
}
}
package ch14;
public class SecondThreadInput implements Runnable
{
public void run()
{
System.out.println("调用SecondThreadInput类的run()重写方法"); //输出字符串
for(int i=0;i<5;i++)
{
System.out.println("SecondThreadInput线程中i="+i); //输出信息
try
{
Thread.sleep((int) Math.random()*100); //线程休眠
}
catch(Exception e){}
}
}
}
package ch14;
public class TestThreadInput
{
public static void main(String[] args)
{
FirstThreadInput fti=new FirstThread@R_502_1373@;
Thread sti=new Thread(new SecondThread@R_502_1373@);
fti.setPriority(4);
sti.setPriority(4);
fti.start();
sti.start();
}
}
调用FirstThreadInput类的run()重写方法 调用SecondThreadInput类的run()重写方法 FirstThreadInput线程中i=0 SecondThreadInput线程中i=0 FirstThreadInput线程中i=1 FirstThreadInput线程中i=2 SecondThreadInput线程中i=1 FirstThreadInput线程中i=3 SecondThreadInput线程中i=2 FirstThreadInput线程中i=4 SecondThreadInput线程中i=3 SecondThreadInput线程中i=4
fti.setPriority(1); sti.setPriority(10);
调用FirstThreadInput类的run()重写方法 调用SecondThreadInput类的run()重写方法 FirstThreadInput线程中i=0 SecondThreadInput线程中i=0 SecondThreadInput线程中i=1 SecondThreadInput线程中i=2 SecondThreadInput线程中i=3 SecondThreadInput线程中i=4 FirstThreadInput线程中i=1 FirstThreadInput线程中i=2 FirstThreadInput线程中i=3 FirstThreadInput线程中i=4
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码
