用taskpool开辟一个线程操作文件,解析文件,然后有多个单例对象。有好方法吗?

用taskpool开辟一个线程操作文件,解析文件,然后有多个单例对象。现在需要把每个单例对象兜设置成Sendable 主线程才可以得到数据吗,有别的好方法吗?

HarmonyOS
2024-11-25 12:00:24
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

​如果主线程需要和taskpool一同对单例进行读、写,那么需要都设置成Sendable并传递,但如果不是作为参数之类的传递,而是主线程和taskpool都调用了获取单例的方法,会导致不同线程之间获取到的单例不一致,此时解决方案参考:​https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-sendable-module-V5

如果只是想把单例中的部分简单类型数据传给主线程,除了通过taskpool执行返回,还可以使用Emitter,

参考:​https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/itc-with-emitter-0000001774280038

分享
微博
QQ
微信
回复
2024-11-25 16:18:14
相关问题
如何对一个文件进行读写操作
482浏览 • 1回复 待解决
写入文件大小限制
1602浏览 • 1回复 待解决
HarmonyOS 对象如何实现
426浏览 • 1回复 待解决
一个更新操作必要用到事务
2117浏览 • 1回复 待解决
在hsp中存在多个的情况
277浏览 • 1回复 待解决
HarmonyOS 模式拿不到类的对象
332浏览 • 1回复 待解决