- Hands-On Data Structures and Algorithms with JavaScript
- Kashyap Mukkamala
- 212字
- 2021-06-30 19:12:11
Basic web worker communication
As the component loads, we will want to set up the worker so that it is not something that we have to repeat several times. So, imagine if there were a way in which you can set up something conditionally and perform an action only when you want it to. In our case, you can add it to the constructor or to any of the lifecycle hooks that denote what phase the component is in such as OnInit, OnContentInit, OnViewInit and so on, which are provided by Angular as follows:
this.worker = new Worker('scripts.bundle.js');
this.worker.addEventListener('message', (e) => {
this.result = e.data;
});
Once initialized, we then use the addEventListener() method to listen for any new messages—that is, results coming from our worker.
Any time the code is changed, we simply pass that data to the worker that we have now set up. The implementation for this looks as follows:
codeChange() {
this.worker.postMessage(this.code);
}
As you can note, the main application component is intentionally lean. We are leveraging workers for the sole reason that CPU-intensive operations can be kept away from the main thread. In this case, we can move all the logic including the validations into the worker, which is exactly what we have done.
- Advanced Quantitative Finance with C++
- 測試驅動開發:入門、實戰與進階
- Game Programming Using Qt Beginner's Guide
- 零基礎玩轉區塊鏈
- Python計算機視覺編程
- Java:High-Performance Apps with Java 9
- 從Java到Web程序設計教程
- Spring Boot+Vue全棧開發實戰
- Java圖像處理:基于OpenCV與JVM
- FPGA嵌入式項目開發實戰
- BeagleBone Robotic Projects(Second Edition)
- Akka入門與實踐
- 人人都能開發RPA機器人:UiPath從入門到實戰
- JavaScript語法簡明手冊
- C語言編程魔法書:基于C11標準