Java多线程实现的四种方式

来源:互联网 发布:梦想的声音2知乎 编辑:程序博客网 时间:2024/05/29 13:50

1.继承Thread类

new Thread(){    public void run() {        System.out.println("run...");    };}.start();

2.实现Runnable接口

new Thread(new Runnable() {    @Override    public void run() {        System.out.println("run...");    }}).start();

3.实现callable接口,通过futureTask包装器来创建Thread

new Thread(new FutureTask<V>(new Callable<V>() {    @Override    public V call() throws Exception {        // TODO Auto-generated method stub        return null;    }})).start();

4.ExecutorService,callable,Future实现有返回值的多线程
执行Callable任务后,可以获取一个Future的对象,在该对象上调用get就可以获取到Callable任务返回的Object了。
注意:get方法是阻塞的,即:线程无返回结果,get方法会一直等待。
再结合线程池接口ExecutorService就可以实现传说中有返回结果的多线程

原创粉丝点击