Angular2在后台线程中使用自定义的可序列化对象
angular2 work in background thread with custom serializable objects
我怎么能做到这一点:我有一些潜在的长计算(例如:巨大的JSON解析为http .),并希望以非阻塞的方式完成。
我尝试使用多线程.js库来使用web worker做后台工作。该库需要将JSON可序列化对象传递给执行函数,该函数不知道闭包、DOM或任何其他全局变量。如。MT.process(longRunningJob, doneCallback)(jsonSerializableArgForBGJob)
。但是这个lib相当旧(3年前的最后一次提交)。有没有更好的替代品更适合于angular2?我需要针对最广泛的浏览器,包括旧的(除了IE/Edge),所以使用它的service worker或lib可能不是一个选择。
JavaScript是单线程和异步的,只要你的代码是异步的。这意味着如果你的代码阻塞了(长时间运行的循环),那么你就阻塞了其他要执行的代码。
RxJS不使用WebWorkers,所以你所做的一切都是阻塞执行线程。
我认为如果你想以一种非阻塞的方式处理数据,目前除了使用WebWorkers自己实现之外没有其他方法。
同时,请注意异步并不意味着并行。
相关文章:
- jQuery自定义验证比较多个输入的序列
- Google Maps Javascript v3 自定义控件子类化标准控件
- 使用 gruntjs 自定义初始化任务重命名模板文件夹
- 谷歌可视化树图-如何创建自定义文本
- 序列化具有方法的自定义对象.序列化后删除的方法-要采取的步骤
- jQuery准备在自定义行为脚本初始化之前启动
- 使用自定义原型实例化JavaScript函数
- 自定义jQuery序列化输出
- jQuery可排序的自定义索引范围序列化
- Angular2在后台线程中使用自定义的可序列化对象
- 下载基于自定义序列化数据生成的文件
- c# JavaScriptConverter -如何反序列化自定义属性
- JSON序列化忽略loadFromJSON之后fabric.js中的自定义属性
- 自定义样式化UL/LI元素
- 使用自定义对象的序列化错误
- Jquery序列化并传入其他自定义帖子数据
- 使用rails的jQuery序列化对自定义id不起作用
- 自定义Angular$http序列化程序
- 自定义谷歌可视化表中的排序列
- jqPlot中的自定义序列值