在Mac 系統(tǒng)里,GCD 允許 overcommit,意味著每次 dispatch_async 都會(huì)創(chuàng)建一個(gè)新線程,即使 over commit 了,這些過量的線程會(huì)根據(jù)優(yōu)先級(jí)來競(jìng)爭(zhēng) CPU 資源。 而在iOS 系統(tǒng)里,GCD 會(huì)控制 overcommit,如果某個(gè)優(yōu)先級(jí)隊(duì)列 over commit 里,那么排在后面的任務(wù)就會(huì)處于等待狀態(tài)。移動(dòng)設(shè)備 CPU 資源比較緊張,這種設(shè)計(jì)合乎常理。
www.dbjr.com.cn/article/1433...htm 2025-6-5