【HarmonyOS NEXT】ArkTS开发是否需要关注多线程安全问题

【关键字】

ArkTS / TaskPool / Worker / 多线程 / 安全

【问题描述】

  1. 使用TaskPool和Worker时,是否使用下述指南中列举的模块即可保证线程安全,无需额外关注线程安全问题?

    https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V2/multi-thread-safety-0000001746508694-V2

  2. ArkTS中的Worker是否封装了TS中的Web Worker?二者使用的规则是否相同?

  3. 如何实现在两个Worker线程中共同修改一个string array?测试发现,两个Worker内部修改的只是传入的array的深拷贝,各自返回各自的处理结果给宿主线程,并不能在Worker对传入的array做实际的修改。

【解决方案】

  1. ArkTS本身是单线程的,不涉及线程安全问题。

    目前ArkTS开启多线程的方式是,语言基础类库提供的TaskPool和Worker两个多线程的方案,两种方案都基于Actor并发模型实现。Actor并发模型基于事件基础传递数据,不需要开发者去面对锁代理的一系列复杂偶发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值