ArkTS的线程机制是怎么样的?每个线程是一个单独的JS引擎吗?

 ArkTS的线程机制是怎么样的?每个线程是一个单独的JS引擎吗?如果每个线程开销比较小的话,为什么要限制线程数量

HarmonyOS
2024-03-17 13:26:58
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
NGKSWCIDT

设备的核数有限,线程数泛滥引起调度开销和内存开销。

HarmonyOS提供了ArkTS任务池和FFRT任务池支持系统统一调度。

系统ArkTS线程中JS部分是基于内存隔离的Actor模型实现,每个线程拥有单独的JS环境实例,因此开启线程会有较大的内存开销。

另外设备的核数有限,其他系统应用线程数开得过多是因为同步锁、同步I/O编程的方式导致。

HarmonyOS提供的异步I/O调用均分发到I/O线程池,不会阻塞应用线程,因此不需要独占线程调用I/O,所需的线程数量远小于其他操作系统。

分享
微博
QQ
微信
回复
2024-03-18 16:32:24
相关问题
关于ArkTS线程机制怎么样
329浏览 • 2回复 待解决
鸿蒙刷新机制怎么样
374浏览 • 1回复 待解决
鸿蒙系统未来发展怎么样
3288浏览 • 1回复 待解决
Worker宿主线程必须线程
281浏览 • 1回复 待解决
PolarDB向量化执行架构怎么样
3001浏览 • 1回复 待解决
HarmonyOS 用户首选项线程安全
204浏览 • 1回复 待解决
zip包解压在主线程还是IO线程
1528浏览 • 1回复 待解决
什么系统线程模型
262浏览 • 1回复 待解决
数据库连接池线程安全
2137浏览 • 1回复 待解决
鸿蒙系统怎么样好用
7浏览 • 0回复 待解决
如何创建一个worker线程
750浏览 • 1回复 待解决
怎么判断一个类型stirng
646浏览 • 1回复 待解决
鸿蒙系统还用怎么样
2浏览 • 0回复 待解决