Skip to content

小程序的双线程模型 #4

Open
@myLightLin

Description

@myLightLin

现在小程序开发非常常见,平时工作也是小程序项目居多,因此有必要好好学习了解下小程序的运行原理。

双线程模型

小程序底层采用的是双线程模型:渲染线程 负责处理 UI,逻辑线程 负责处理接口调用,数据转换。
image

如图,两个线程是并列的,并没有谁归属于谁,他们之间通过 naive 层进行转发通信,其中用到了事件驱动的模式。逻辑线程由客户端提供引擎,iOS 下是 JavaScript Core ,安卓是 X5 内核,模拟器工具是 nwjs。
整个通信过程大致如下:

  • 视图层通过用户点击,产生事件
  • 这个事件被传递到逻辑层
  • 逻辑层经过一系列计算,将最终数据传给视图层
  • 视图层再将数据渲染为 UI

Metadata

Metadata

Assignees

No one assigned

    Labels

    小程序微信小程序系列知识

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions