实现多线程: 多线程的实现方式、设置获取线程名称、设置获取线程优先级、线程控制、后台线程(守护线程)

总结:

1.有两种方式实现多线程:第一种继承Thread类。第二种实现Runnable接口。

2.设置获取线程名称。

3.线程调度(设置线程优先级)。  最小优先级是1    默认 5  最高 10.  优先级高不代表一定所有线程都是优先的,只是比优先级低的相对优先而已。

4.线程控制。有很多方法目前讲3个方法1.线程停留指定毫秒数。2.等待这个线程死亡。3.将线程指定为守护线程。

 

 例: 多态方式一继承Thread类; 注意 不能直接调用 重写 的run方法 。调用start方法 会自动去调用 ,如直接调用run方法 实现不了多线程。

     

 

结果2个线程同时

 

 

例二:例: 多态方式二实现Runnable接口; 创建Thread类对象把 实现的对象传入。

     

 

 结果

 

 

 

 

 

 有两种方式 设置 线程名称 。1.使用对象调用setName方法设置名称。 2.通过构造方法创建对象时候设置名称。

例1:使用对象调用setName方法设置名称

     结果

 

 例2:通过构造方法创建对象时候设置名称。注:需要在子类中重新构造方法,并把参数上传给父类  super(name);

     结果 

 

 

 

例:

 

   

 

 结果:设置优先级高不代表一定所有线程都是优先的,只是比优先级低的相对优先而已。

 

 

 

 例: sleep()方法  使用在线程对象类中。

     

 

  结果:

 

 例:2 线程使用了 join() 方法 ,会先执行这个方法的线程 执行完成后才执行其他的线程

    

 

 结果:

 

 例3:设置守护线程。

  结果主线程结束后,不久守护线程也结束了 

 

posted @ 2020-05-17 18:02  mengjiabei  阅读(284)  评论(0)    收藏  举报