當有2個cpu的時候,只有一個進程,該進程是否獨享2個cpu資源?2、線程是進程下面的,如果有兩個進程,分別獨享1個cpu,進程下有n個線程,那么理論上這種情況下的多線程是無法利用多核的優勢的?所以要利用多核,只能有一個進程?3、python的GIL是每個進程一個還是整個只有唯一一個?4、既然有GIL,但是又說多線程對“IO密集型”任務有優勢。我的理解是,任務的瓶頸在讀寫上,雖然多個線程間切換也需要cup資源,但是由于計算任務并不繁重,所以線程間切換很流暢(線程間切換比進程切換所消耗的cpu資源更少),所以比起多進程來多線程在“IO密集型”任務上比較有優勢。不知道我的理解有沒有錯誤。請各位高手指點,謝謝大家~~
關于python多進程、多線程的一些疑問
莫回無
2018-07-02 12:13:06