更多 Java 并發編程方面的文章,請參見文集《Java 并發編程》
| | 多進程 | 多線程 | 總結 |
|---|---|
| 數據共享 | 數據共享復雜,需要用IPC | 數據共享簡單 | 多線程占優 |
| 內存、CPU | 占用內存多,切換復雜,CPU利用率低 | 占用內存少,切換簡單,CPU利用率高 | 多線程占優 |
| 創建銷毀、切換 | 創建銷毀、切換復雜,速度慢 | 創建銷毀、切換簡單,速度快 | 多線程占優 |
| 編程、調試 | 編程簡單,調試簡單 | 編程復雜,調試復雜 | 多進程占優 |
| 可靠性 | 進程間不會互相影響 | 一個線程掛掉將導致整個進程掛掉 | 多進程占優 |
| 分布式 | 適應于多核、多機分布式 | 適應于多核分布式 | 多進程占優 |
引用:
多線程還是多進程的選擇及區別