Java多线程

来源:互联网 发布:淘宝买手机信用卡分期 编辑:程序博客网 时间:2024/06/04 00:54

Java多线程

多线程概述

多线程即在一个进程运行的过程中,可以同时执行多个任务,这些任务被称为多线程。如图:
这里写图片描述

一个线程的生命周期

这里写图片描述

创建多线程的三种方式

  • 继承Thread类并重写run()方法
    创建ThreadDemo类继承Thread类并实现run()方法。
    代码示例如下:
/** * 这个类是通过继承Thread来实现多继承的 * */public class ThreadDemo extends Thread {    /**     * 重写run方法     */    @Override    public void run() {        System.out.println("ThreadDemo:" + Thread.currentThread().getName());    }}
  • 实现Runnable接口并实现run()方法
    创建ThreadRunnable类实现Runnable接口并实现run()方法。
    代码示例如下:
/** * 通过实现Runnable创建多线程 * */public class ThreadRunnable implements Runnable {    /**     * 实现run方法     */    @Override    public void run() {        System.out.println("ThreadRunnable:" + Thread.currentThread().getName());    }}
  • 测试
    代码示例如下:
/** * 测试类 * */public class ThreadTest {    public static void main(String[] args) {        System.out.println("--- 主线程,开启新线程之前 ---");        ThreadDemo thread = new ThreadDemo();        thread.setName("thread-demo");        thread.start(); // 启动线程        System.out.println("--- 主线程,开启第一个线程 ---");        ThreadRunnable runnable = new ThreadRunnable();        Thread thread1 = new Thread(runnable, "thread-runnable");        thread1.start();        System.out.println("--- 主线程,开启第二个线程 ---");    }}

运行结果:

--- 主线程,开启新线程之前 ------ 主线程,开启第一个线程 ---ThreadDemo:thread-demo--- 主线程,开启第二个线程 ---ThreadRunnable:thread-runnable

从上述结果上看,开启一个新的线程并不影响主线程的运行。

参考链接:http://www.runoob.com/java/java-multithreading.html
源代码链接:https://github.com/myNameIssls/javase-study/tree/master/javase-multithreading

原创粉丝点击