對於Python如果是CPU密集型應該用多進程模型(大量的計算)
如果是IO密集型應該用多線程模型(數據的讀取寫入、網絡IO數據傳輸)
由於GIL的存在,CPython不能有效的利用多核處理器,表現為任意時間一個進程只有一個線程在跑;而IO密集型運算,多數是在IO讀寫將線程堵塞掉了,這個時候線程切換是很合理的,反正線程只是單純地等待,在這個等待的時候去做其他的事情,資源利用率就上去了。
python的多線程只能使用一個cpu核心,io密集型應用,本來cpu占用率就很低(主要原因還是GIL鎖)
python多線程這個限制和協程有點像,應用也很像,都是適合io密集型
