码迷,mamicode.com
首页 > 编程语言 > 详细

多线程关于优先级。

时间:2016-01-21 19:18:50      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:

                                                                    多线程关于优先级

    对多个线程设置不同的优先级

 code:

 package Chapter8;
 class MyThread4 extends Thread
 {
     public void run()
     {
         for(int i=0;i<5;i++)
         {
System.out.println(i+" "+getName()+"优先级是:"+getPriority());
             }
     }
 }
public class ThreadExample3 {
    public static void main(String[] args)
    {
        MyThread4 t1=new MyThread4();
        MyThread4 t2=new MyThread4();
        t1.setPriority(1);
        t2.setPriority(10);
        t1.start();
        t2.start();
        
        
    }

}
运行结果:
0 Thread-0优先级是:1
0 Thread-1优先级是:10
1 Thread-1优先级是:10
2 Thread-1优先级是:10
3 Thread-1优先级是:10
4 Thread-1优先级是:10
1 Thread-0优先级是:1
2 Thread-0优先级是:1
3 Thread-0优先级是:1
4 Thread-0优先级是:1
照片:

技术分享

 

   启动线程的方式有两种,一种是继承Thread 这个类,另一种方式是:实现接口Runnable

看看下面的这个几行代码有没有什么问题?

code:

claass Mythread2 implements Runnable

{

   public void run()

{

 for (int i=0;i<5;i++)

System.out.println(i+" "+getName()+"优先级"+getPriority());

 }

}

}

这几行代码有bug.  Runnable 是一个接口。必须要实现接口的里方法。 而getName()和getPriority()方法是不是这个接口里面的方法

在Mythread2这个类中也没有getName()方法和getPriority()方法. 必然会报错的。

在类Thread 中有这几个方法。
class MyThread4 extends Thread
 {
     public void run()
     {
         for(int i=0;i<5;i++)
         {
System.out.println(i+" "+getName()+"优先级是:"+getPriority());
             }
     }
 }


这才是可以行的通。

getName()  返回线程的名称

getPriority()  返回I线程的优先级

setPriority()  更改线程的优先级

 

多线程关于优先级。

标签:

原文地址:http://www.cnblogs.com/pwhit/p/5149004.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!