スレッドプール
#マルチスレッド
code:scala
(1 to 1000).foreach { i =>
Future { println(i) }
}
プログラムでは上のように、たくさんの並列タスクを実行したいことがあります。
毎回新しいスレッドを作ると:
OSのスレッド生成コストが重い(数MBメモリ+数ms起動)
スレッド数が増えすぎて文脈切替が頻発(性能劣化)
なので、「スレッドを再利用する」のが スレッドプール です。