多線程

一、多線程的四種實現方式

       a、繼承Thread類

       b、實現Runnable接口

       c、實現Callable接口

       d、Executor線程池的方式實現

      四種方式的實現方式請看:https://www.cnblogs.com/felixzh/p/6036074.html

二、ExecutorService中submit和execute的區別

       a、submit有入參與返回值,並且可以處理異常。需要實現Callable接口

       b、execute沒有返回值

       詳情請看:https://www.cnblogs.com/wanqieddy/p/3853863.html

三、Executors實現四種線程池

       a、newCachedThreadPool,創建緩存線程池,如果線程池長度超過處理需要,可靈活回收空閒線程,若無可回收,則新建線程。

        b、newFixedThreadPool 創建一個定長線程池,可控制線程最大併發數,超出的線程會在隊列中等待。

        c、newScheduledThreadPool 創建一個定長線程池,支持定時及週期性任務執行。

        d、newSingleThreadExecutor 創建一個單線程化的線程池,它只會用唯一的工作線程來執行任務,保證所有任務按照指定順序(FIFO, LIFO, 優先級)執行。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章