关于多线程的两种实现方式
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()