如何创建一个线程?

编程入门 行业动态 更新时间:2024-10-26 22:17:44

如何创建一个<a href=https://www.elefans.com/category/jswz/34/1771240.html style=线程?"/>

如何创建一个线程?

我们都知道多线程可以并发执行任务,在某些情况下多线程或许不能提高执行效率,因为多线程虽然看上去是并发执行的,实际上还是CPU分配时间片,是有先后顺序的,只是时间片切换速度很快,以至于我们看上去是同时执行的而已!但是对于那种需要等待请求响应耗时比较长的任务用多线程的话相较于单线程效率要高的多,如API请求,网络爬虫等等。
那么如何创建一个线程呢?创建线程有两种方法,第一种就是继承Thread类,第二种实现Runnable接口。如下展示:
1.继承Thread类:package 多线程学习;

/**

  • Created by Administrator on 2018/9/24.
    */
    public class MyThread extends Thread{
    @Override
    public void run(){
    try{
    System.out.println(“创建了一个线程叫:”+Thread.currentThread().getName());
    }catch (Exception e){
    e.printStackTrace();
    }
    }
    }

创建Test类:
package 多线程学习;

/**

  • Created by Administrator on 2018/9/25.
    */
    public class Test {
    public static void main(String[] args) {
    MyThread myThread = new MyThread();
    myThread.setName(“thread0”);
    myThread.start();
    }
    }

运行这个main方法:打印结果如下:

创建了一个线程叫:thread0

Process finished with exit code 0

2.实现Runnable接口:

package 多线程学习;

/**

  • Created by Administrator on 2018/9/24.
    */
    public class MyRunnable implements Runnable{
    @Override
    public void run(){
    try{
    System.out.println(“创建了一个线程叫:”+Thread.currentThread().getName());
    }catch (Exception e){
    e.printStackTrace();
    }
    }
    }

创建Test类:
package 多线程学习;

/**

  • Created by Administrator on 2018/9/25.
    */
    public class Test {
    public static void main(String[] args) {
    Runnable runnable = new MyRunnable();
    Thread thread = new Thread(runnable);
    thread.setName(“thread0”);
    thread.start();
    }
    }

运行这个main方法:打印结果如下:

创建了一个线程叫:thread0

Process finished with exit code 0

总结:我们可以看到这两种创建线程的方法都可以,但是由于java语言的特性是单根继承的,而接口是可以实现多个的,所以我们平时最好还是用第二种实现Runnable接口的方法来创建一个线程。但其实我们看Thread类的源码就知道它也是实现Runnable的接口的:
public
class Thread implements Runnable {
}

更多推荐

如何创建一个线程?

本文发布于:2023-06-13 09:40:55,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/679102.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:线程   创建一个

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!