多线程--thread

Posted 1997wy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程--thread相关的知识,希望对你有一定的参考价值。

多线程

进程:进程指正在运行的程序。确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。

线程:线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。

简而言之:一个程序运行后至少有一个进程,一个进程中可以包含多个线程

 

主线程

jvm启动后,必然有一个执行路径(线程)从main方法开始的,一直执行到main方法结束,这个线程在java中称之为主线程。

 

单线程多线程区别

l  单线程程序:即,若有多个任务只能依次执行。当上一个任务执行结束后,下一个任务开始执行。如,去网吧上网,网吧只能让一个人上网,当这个人下机后,下一个人才能上网。

l  多线程程序:即,若有多个任务可以同时执行。如,去网吧上网,网吧能够让多个人同时上网。

 

Thread类

构造方法

 

Thread()

创建对象

 

Thread(String)

指定的线程名称

 

方法

void Start();

开始线程执行

 

void run()

运行方法里的内容

 

Static void sleep(long)

指定毫秒值暂时休息

 

Static thread currentTread();

执行当前的线程对象引用

 

thread(String name)

改变线程名字

 

实例

public class Demo01 {

    public static void main(String[] args) {

        //创建自定义线程对象

        MyThread mt = new MyThread("新的线程!");

        //开启新线程

        mt.start();

        //在主方法中执行for循环

        for (int i = 0; i < 10; i++) {

           System.out.println("main线程!"+i);

        }

    }

}

l  自定义线程类

public class MyThread extends Thread {

    //定义指定线程名称的构造方法

    public MyThread(String name) {

        //调用父类的String参数的构造方法,指定线程的名称

        super(name);

    }

    /**

     * 重写run方法,完成该线程执行的逻辑

     */

    @Override

    public void run() {

        for (int i = 0; i < 10; i++) {

           System.out.println(getName()+":正在执行!"+i);

        }

    }

}

 

 

 

 

以上是关于多线程--thread的主要内容,如果未能解决你的问题,请参考以下文章

JAVA多线程继承Thread 与实现Runnable接口的相关疑问

多线程threading模块

27多线程(多线程的三种实现方式Thread线程类的常见方法线程安全问题)

27多线程(多线程的三种实现方式Thread线程类的常见方法线程安全问题)

python多线程thread.start_new_thread传参的问题

多线程 threading