大きなファイルがテラバイトまであり、私の仕事は1行ずつ処理することです。達成するためには、各行に5秒かかるはずです。私はこのExecutorServiceのキューがいっぱいになるとどうなりますか
ExecutorService executor = Executors.newFixedThreadPool(5);
while ((line = br.readLine()) != null) {
Runnable worker = new WorkerThread(line);
executor.execute(worker);
}
のような固定スレッドプールへのプロセスをディスパッチパフォーマンスを向上させるために私の質問は、私は非常に多くのタスクを置くことによってエグゼキュータのキューを圧倒した場合に何が起こるかです。それはStackOverflow
を投げますか?
2年前私はインタビューでこの質問をしました:) – Vipin
@Vipin:あなたは仕事を持っていますか? –
私はこれに答えることができませんでした。いくつかの同様の質問の後、私は可能な限りJDKのソースコードを調べ始めました。デザインをよりよく理解するのに役立ちます。 – Vipin