0
点赞
收藏
分享

微信扫一扫

多线程01

王老师说 2022-02-05 阅读 67

创建多线程的第一种方式:

定义Thread类的子类,并重写run()方法:

*
实现步骤:
1.创建一个Thread类的子类
2.在Thread类的子类中重写run方法,设置线程任务(开启线程要干什么)
3.在Thread类的子类对象
4.调用Thread类中的start()方法,开启新的线程,执行run方法
  void start()是线程开始执行;java虚拟机调用该线程的run方法
  结果是两个线程并发的运行,当前线程main线程和另一个线程(创建的新线程,执行run方法)。
  多次启用一个线程是非法的,特别是当线程已经结束执行后,不能再重新启动。
java程序属于抢占式调度,哪个线程优先级较高,哪个线程就先执行,同一个优先级,随机选择一个执行
 */

首先创建MyThread类:

package demo01Thread;

public class MyThread extends Thread {
    @Override
    public void run() {
        super.run();
        //2.在Thread类的子类中重写run方法,设置线程任务
        for(int i=0;i<20;i++){
            System.out.println("run:"+i);
        }
    }
}

在创建Thread01类:

package demo01Thread;
/*
实现步骤:
1.创建一个Thread类的子类
2.在Thread类的子类中重写run方法,设置线程任务(开启线程要干什么)
3.在Thread类的子类对象
4.调用Thread类中的start()方法,开启新的线程,执行run方法
  void start()是线程开始执行;java虚拟机调用该线程的run方法
  结果是两个线程并发的运行,当前线程main线程和另一个线程(创建的新线程,执行run方法)。
  多次启用一个线程是非法的,特别是当线程已经结束执行后,不能再重新启动。
java程序属于抢占式调度,哪个线程优先级较高,哪个线程就先执行,同一个优先级,随机选择一个执行
 */
public class Thread01 {
    public static void main(String[] args) {
        //3.创建Thread类的子类对象
        MyThread mt=new MyThread();
        //4.调用Thread类中的start()方法,开启新的线程,执行run方法
        mt.start();

        for(int i=0;i<20;i++){
            System.out.println("main"+i);
        }
    }
}

结果:

 

举报

相关推荐

0 条评论