線程池ExecutorService 中併發數的(引入信號量Semaphore)控制執行

查看本機處理器的核心數代碼:Runtime.getRuntime().availableProcessors() 因此,應用程序的最小線程數應該等於可用的處理器核數。若是全部的任務都是計算密集型的,則建立處理器可用的核心數那麼多線程就能夠了。在這種狀況下,建立更多的線程對程序性能而言反而是不利的。由於當有多個任務處於就緒狀態時,處理器核心須要在線程間頻繁進行上下文切換,而這種切換對程序性能損耗較大
相關文章
相關標籤/搜索