关于多线程的两种实现方式

Java天生支持多线程,但是多线程操作起来有点复杂,平时又用得也不多。多线程能有效的提高程序运行的效率,提高CPU的利用率,但是多线程使用不当又会造成一系列的问题,比如程序死锁等。现在整理两种基本的多线程实现方式如下:

方式一:继承Thread类,重写run方法

程序代码:

package com.xiaoa.thread;


public class MyThread extends Thread {

    @Override

    public void run() {

        super.run();

        System.out.println("MyThread.run()");

    }

}


方式二:实现Runnable接口,重写run方法

程序代码:

package com.xiaoa.thread;


public class MyRunnable implements Runnable{


    @Override

    public void run() {

        System.out.println("MyRunnable.run()");

    }


}


测试代码:

package com.xiaoa.test;


import com.xiaoa.thread.MyRunnable;

import com.xiaoa.thread.MyThread;


public class Test {

    public static void main(String[] args) throws Exception {

        MyThread th1 = new MyThread();

        th1.start();

        

        th1.sleep(100l);

        

        System.out.println("--------------------------");

        

        Thread.currentThread().sleep(100l);

        

        MyRunnable th = new MyRunnable();

        Thread th2 = new Thread(th);

        th2.start();

        

        

    }

}

测试结果:

MyThread.run()

--------------------------

MyRunnable.run()


请使用浏览器的分享功能分享到微信等