java线程启动三种方式

来源:互联网 发布:淘宝用什么打折软件 编辑:程序博客网 时间:2024/06/05 23:55

1、继承Thread,重写run()方法;

public class TestThread extends Thread{public static void main(String[] args) {TestThread myThread1=new TestThread();TestThread myThread2=new TestThread();myThread1.start();myThread2.start();}public void run(){System.out.println(Thread.currentThread().getName()+"线程开启");;}}
2、实现Runnable接口,重写run()方法;

public class TestThread implements Runnable{public static void main(String[] args) {TestThread myThread1=new TestThread();TestThread myThread2=new TestThread();new Thread(myThread1).start();new Thread(myThread2).start();}public void run(){System.out.println(Thread.currentThread().getName()+"线程开启");}}
2、实现Callable接口(线程池)

import java.util.concurrent.Callable;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class TestThread implements Callable<String>{public static void main(String[] args) throws Exception {TestThread myThread1=new TestThread();TestThread myThread2=new TestThread();ExecutorService pool = Executors.newFixedThreadPool(2);pool.submit(myThread1);pool.submit(myThread2);}@Overridepublic String call() throws Exception {System.out.println(Thread.currentThread().getName()+"线程开启");return Thread.currentThread().getName();}}

3.2实现Callable接口,用FutureTask取得call返回结果

import java.util.concurrent.Callable;import java.util.concurrent.FutureTask;public class TestThread implements Callable<String>{public static void main(String[] args) throws Exception {TestThread myThread1=new TestThread();TestThread myThread2=new TestThread();FutureTask<String> task1=new FutureTask<String>(myThread1);//取得call返回结果FutureTask<String> task2=new FutureTask<String>(myThread2);//取得call返回结果//FutureTask是Runnable接口子类,所以可用thread类接收tasknew Thread(task1).start();new Thread(task2).start();//FutureTask父接口future可以接收线程执行完毕后的内容System.out.println(task1.get());System.out.println(task2.get());}@Overridepublic String call() throws Exception {System.out.println(Thread.currentThread().getName()+"线程开启");return Thread.currentThread().getName();}}



原创粉丝点击