簡單的多線程并不能提高效率

下面是一個(gè)最簡單的多線程處理程序。這種多線程處理并不能提高效率

private ExecutorService threadPool = Executors.newFixedThreadPool(2);

//..
Output process(Input input) {
    Future<Output> f = 
        threadPool.submit(() ->
           longTimeConsumingTask(input));
  return f.get();
}

這里似乎看到 longTimeConsumingTask 在其他線程里面并行計(jì)算,但可惜的是 f.get() 在這里同步等待。

這種方式其實(shí)和在本線程里面運(yùn)行 longTimeConsumingTask 區(qū)別不大。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 從哪說起呢? 單純講多線程編程真的不知道從哪下嘴。。 不如我直接引用一個(gè)最簡單的問題,以這個(gè)作為切入點(diǎn)好了 在ma...
    Mr_Baymax閱讀 2,831評論 1 17
  • 第三章 Java內(nèi)存模型 3.1 Java內(nèi)存模型的基礎(chǔ) 通信在共享內(nèi)存的模型里,通過寫-讀內(nèi)存中的公共狀態(tài)進(jìn)行隱...
    澤毛閱讀 4,383評論 2 22
  • Object C中創(chuàng)建線程的方法是什么?如果在主線程中執(zhí)行代碼,方法是什么?如果想延時(shí)執(zhí)行代碼、方法又是什么? 1...
    AlanGe閱讀 1,793評論 0 17
  • //Clojure入門教程: Clojure – Functional Programming for the J...
    葡萄喃喃囈語閱讀 3,776評論 0 7
  • 有朋友提到她的傷心事。在我看來,傷心歸根到底是現(xiàn)實(shí)與期待的差距問題。能導(dǎo)致傷心的,除了投入時(shí)間精力,更重要的...
    ivisliu閱讀 215評論 0 1