Weex 在 JS Runtime 内的多实例管理
Weex 的技术架构和传统的客户端渲染机制相比有一个显著的差别,就是引入了 JavaScript,通过 JS Runtime 完成一些动态性的运算,再把运算结果和外界进行通信,完成界面渲染等相关操作指令。而客户端面对多个甚至可能同时共存的 Weex 页面时,并没有为每个 Weex 页面提供各自独立的 JS Runtime,相反我们只有一个 JS Runtime,这意味着所有的 Weex 页面共享同一份 JS Runtime,共用全局环境、变量、内存、和外界通信的接口等等。这篇文章会循序渐进的介绍 Weex JS Runtime 这部分的内容,大概的章节设计是这样的:
- 为什么需要多实例
- 多实例管理面临的挑战
- 解决问题的思路
- 几个特殊处理的地方
- 总结
为什么在 JS Runtime 内部手动管理多实例?
如果只用一个词来回答,那就是“性能”
如果要用