一、是什么
????Web Worker 的作用,就是為 JavaScript 創(chuàng)造多線程環(huán)境,允許主線程創(chuàng)建 Worker 線程,將一些任務(wù)分配給后者運行。在主線程運行的同時,Worker 線程在后臺運行,兩者互不干擾。等到 Worker 線程完成計算任務(wù),再把結(jié)果返回給主線程。
????Worker 線程一旦新建成功,就會始終運行,不會被主線程上的活動(比如用戶點擊按鈕、提交表單)打斷。這樣有利于隨時響應(yīng)主線程的通信。但是,這也造成了 Worker 比較耗費資源,不應(yīng)該過度使用,而且一旦使用完畢,就應(yīng)該關(guān)閉。
二、解決什么問題
防止js主線程被大量計算、請求等任務(wù)阻塞;
使用時注意事項:
1)同源限制;2)DOM 限制;3)通信聯(lián)系;4)腳本限制;5)文件限制
參考資料:
1、阮一峰:http://www.ruanyifeng.com/blog/2018/07/web-worker.html