- 並列処理(parallel) --- マルチコア
- 並行処理(concurrent) --- シングルコア
プロセスはOSからリソースを割り当てられる スレッドはプロセスの中で動く(OSからはリソースを割り当てられない)
-
プロセス1
- スレッド1a
- スレッド1b
-
プロセス2
- スレッド2a
- スレッド2b
- スレッド2c
-
並列処理(マルチプロセス)
- CPUリソースを大量に消費するような処理に向いている(CPUバウンドな処理)
-
並行処理(マルチスレッド)
- 待ち時間が長いような処理に向いている(I/Oバウンドな処理)