线程模型
FA模型下的线程主要有如下三类:
-
主线程: 负责管理其他线程。
-
Ability线程:
- 每个Ability一个线程。
- 输入事件分发。
- UI绘制。
- 应用代码回调(事件处理,生命周期)。
- 接收Worker发送的消息。
-
Worker线程: 执行耗时操作。
基于当前的线程模型,不同的业务功能运行在不同的线程上,业务功能的交互就需要线程间通信。线程间通信目前主要有Emitter和Worker两种方式,其中Emitter主要适用于线程间的事件同步, Worker主要用于新开一个线程执行耗时任务。
说明: FA模型每个Ability都有一个独立的线程,Emiter可用于Ability线程内、Ability线程间、Ability线程与Worker线程的事件同步。