1、多執行緒中的執行緒池原理
(1)判斷執行緒池中的核心執行緒是否都在執行任務,如果沒有(核心執行緒是閒置的,或者核心執行緒是無用的),建立一個新的工作執行緒來執行任務。如果核心執行緒都在執行任務,則進入下一個程序。
(2)執行緒池判斷工作佇列是否已滿。如果工作佇列沒有滿,將新提交的任務儲存在這個工作佇列中。如果工作佇列滿了,進入下一個流程。
(3)判斷執行緒池中的執行緒是否處理工作狀態,如果沒有,建立一個新的工作執行緒來執行任務。如果滿了,就交給飽和策略來處理這個任務。
2、多執行緒的實例
public class Test implements Runnable { @Override public void run() { try { Thread.sleep(10); } catch (InterruptedException e) { e.printStackTrace(); } } static ExecutorService service = newFixedThreadPool(3); public static void main(String[] args) { for (int i=0;i<100;i++) { service.execute(new Test()); } service.shutdown(); } }
以上是Java多執行緒的實作原理及相關知識點的詳細內容。更多資訊請關注PHP中文網其他相關文章!