2015-09-16 164 views
4

我對問題之一 - Are Futures executed on a single thread? (Scala)中的其中一個問題有任何疑問。如果爲了達到Future而使用新的/獨立的線程,那麼AKKA提供的優勢比Java線程有什麼優勢? Web客戶端的數量受限於應用程序可以生成的最大線程數量?與系統可以創建的參與者數量相比,線程數量將少得多。我只想知道是否有其他方法,以便在有大量請求進來時,系統將能夠處理它們?AKKA期貨和Java線程

回答

8

Futures使用ExecutionContext執行。有多種方法來構建ExecutionContext。其中之一是使用ExecutionService來創建它。例如,ExecutionService可以是ForkJoinPoolThreadPoolExecutor。根據ExecutionService的實施情況,您的期貨將會產生新的Thread或重複使用現有的期貨。