JavaScript 任务池
JavaScript 任務(wù)池
線程池
在多線程語言中 ,我們通常不會隨意的在需要啟動線程的時候去啟動 ,而是會選擇創(chuàng)建一個線程池。所謂線程池,本意其實就是(不止這些作用,其余作用可以自行查閱):
- 節(jié)省操作系統(tǒng)資源
- 限制最大線程數(shù)。
對于 JavaScript 來說 ,雖然不存在“啟動線程”這種問題 ,但我們還是可以通過類似的思想 ,來限制我們做異步操作的數(shù)量。
分析
首先我們需要一個數(shù)組 ,用它來存儲尚未執(zhí)行的任務(wù),每個任務(wù)都是一個函數(shù) ,這個函數(shù)必須要返回一個 Promise