文章詳情頁
javascript - webpack并行(并發)打包問題
瀏覽:86日期:2023-03-30 11:35:25
問題描述
一個循環webpack同時打包一個項目到不同的位置上let num(new Array(num)),map((v, k) = { let start = +new Date() webpack(webpackConfig, () => { console.log(`time:${+new Date() - start} ms) })})
num = 1
time:5232ms
num = 2
time:9212mstime:9332ms
...
num = 30
time:40212mstime:40342ms...time: 4xxxxms看起來并不是真正意義上的并行,會等所有webpack全執行完才一起返回期待的效果是誰先build好誰先返回,而不是一起這跟nodejs的單線程有關系?后來使用了paraller-webpack這個庫,修改源碼,打印每一個promise的then返回時間,結果類似,help
問題解答
回答1:nodejs執行是單線程,但是你的結果和你寫的方式有關系。
期待的效果是誰先build好誰先返回,而不是一起
可以試試如下兩種方案,其中第二種是可以做到真正的并行1:將循環中的每個webpack任務構建方式分別寫到異步里面例如setTimeOut。2:開啟多個node進程,每個進程上執行webpack構建
標簽:
JavaScript
相關文章:
1. javascript - 請問 chrome 為什么會重復加載圖片資源?2. 人工智能 - python 機器學習 醫療數據 怎么學3. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處4. python - 能通過CAN控制一部普通的家用轎車嗎?5. javascript - react input file6. c++ - 請問MySQL_Connection::isReadOnly 怎么解決?7. css3 - 微信前端頁面遇到的transition過渡動畫的bug8. Python爬蟲如何爬取span和span中間的內容并分別存入字典里?9. html5 - 只用CSS如何實現input框的寬度隨框里輸入的內容長短自動適應?10. javascript - 關于css絕對定位在ios瀏覽器被橡皮筋遮擋的問題
排行榜
