1. 程式人生 > 其它 >建立執行緒5種方法

建立執行緒5種方法

1、繼承Thread,重寫run方法,呼叫start啟動

2、實現Runnable介面,重寫run方法,呼叫start啟動。

3、lambda表示式

public class MyThread {

    static class MyExtend extends Thread{
        @Override
        public void run() {
            System.out.println("Thread");
        }
    }

    static class MyRun implements Runnable{
        @Override
        public void run() {
            System.out.println("Thread");
        }
    }

    public static void main(String[] args) {
        new MyExtend().start();
        new Thread(new MyRun()).start();
        new Thread(()->{
            System.out.println("Thread");
        }).start();
    }
}

4、對於繼承Thread和實現Runnable哪種更好?

  實現更好,java是單繼承多實現的

5、執行緒池建立執行緒

        ExecutorService service = Executors.newCachedThreadPool();
        service.execute(()->{
            System.out.println("Thread");
        });
        service.shutdown();    

6、實現Callable介面

  因為實現Runnale介面返回值是寫死的void,不靈活,Callable介面返回值可以自己設定

public class MyCallable implements Callable<String > {

    @Override
    public String call() throws Exception {
        return "success";
    }

    public static void main(String[] args) throws ExecutionException, InterruptedException {
        ExecutorService service = Executors.newCachedThreadPool();
        Future<String> submit = service.submit(new MyCallable());
        String s = submit.get();
        System.out.println(s);
        service.shutdown();
    }
}

  

作者:http://cnblogs.com/lyc-code/
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連結,否則保留追究法律責任的權力。