实现多线程最简单的两种方式
程序员文章站
2023-08-28 16:15:59
多线程创建多线程方式1:继承Thread类,重写run方法,调用start()方法/** * @author 颂梓枫 * @since JDK 1.8 * ClassName: ThreadDemo * date: 2021/1/1 22:19 * Description: * 创建多线程方式1:1。继承Thread类 * 2。重写run方法 * 3。调用start()方法 */public class ThreadDe...
多线程(推荐使用方式2)
创建多线程方式1:继承Thread类,重写run方法,调用start()方法
/**
* @author 颂梓枫
* @since JDK 1.8
* ClassName: ThreadDemo
* date: 2021/1/1 22:19
* Description:
* 创建多线程方式1:1。继承Thread类
* 2。重写run方法
* 3。调用start()方法
*/
public class ThreadDemo extends Thread {
//重写Thread方法
@Override
public void run() {
for (int i = 0; i < 30; i++) {
System.out.println("run方法"+i);
}
}
public static void main(String[] args) {
ThreadDemo threadDemo = new ThreadDemo();
//调用start()方法
threadDemo.start();
for (int i = 0; i < 30; i++) {
System.out.println("main方法--->"+i);
}
}
}
运行结果(部分)
main方法--->16
main方法--->17
main方法--->18
run方法0
run方法1
run方法2
main方法--->19
main方法--->20
main方法--->21
main方法--->22
main方法--->23
main方法--->24
main方法--->25
main方法--->26
main方法--->27
main方法--->28
main方法--->29
run方法3
run方法4
run方法5
run方法6
创建多线程方式2:实现runable接口,重写run方法,调用
注意:线程开启不一定立即执行,由CPU调度
创建多线程方式2:.实现runnable接口 ,.重写run方法 , .创建线程对象调用start()方法
/**
* @author 颂梓枫
* @since JDK 1.8
* ClassName: ThreadRun
* date: 2021/1/1 23:40
* Description:
* 创建多线程方式2:1.实现runnable接口
* 2.重写run方法
* 3.创建线程对象,调用start()方法
*/
public class ThreadRun implements Runnable {
@Override
public void run() {
for (int i = 0; i < 20; i++) {
System.out.println("run--->"+i);
}
}
public static void main(String[] args) {
//创建Runnable接口的实现类对象
ThreadRun threadRun = new ThreadRun();
//创建线程对象,通过线程对象开启线程
Thread thread = new Thread(threadRun);
thread.start();
//或直接执行 new Thread(threadRun).start();
for (int i = 0; i < 20; i++) {
System.out.println("main--->"+i);
}
}
}
运行结果
run--->4
run--->5
main--->1
run--->6
run--->7
run--->8
main--->2
main--->3
main--->4
main--->5
run--->9
run--->10
run--->11
本文地址:https://blog.csdn.net/weixin_43306882/article/details/112076069
上一篇: switch分支语句