HarmonyOS 网络请求、文件读写、关系型数据读写操作是否是由系统自动放到线程池执行并进行调度管理

在最佳实践应用并发设计章节,看到如下描述:ArkTS采用了内存隔离的线程模型,不同线程之间通过消息通信,线程内无锁化运行。对于不同业务,其内部的I/O操作会由系统分发到后台的I/O任务池,不阻塞ArkTS上层逻辑。异步I/O不阻塞ArkTS线程,同时TaskPool及I/O线程池由系统管理,提升能效。网络下载、文件访问等异步I/O操作系统会分发到I/O线程池。

请问网络请求、文件读写、关系型数据读写操作是否是由系统自动放到线程池执行并进行调度管理,不需要开发者手动使用taskpool去执行这些耗时操作。

HarmonyOS
2025-01-10 07:37:27
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

网络请求:

let httpRequest = http.createHttp();

httpRequest.request()

文件读写:

1.fs.openSync(logFilePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE | fs.OpenMode.APPEND)

2.fs.writeSync(logFile.fd, writeContent);

3.zlib.compressFile(inFile, outFile, options, (errData: BusinessError)

关系型数据库读写:

1.(store as relationalStore.RdbStore).insert(“LOG_RECORD”, valueBucket)

2.(store as relationalStore.RdbStore).query(predicates, [‘RECORD_TIME’, ‘CONTENT’])

3.resultSet.goToNextRow()

4.resultSet.getString(resultSet.getColumnIndex(‘CONTENT’))

5.(store as relationalStore.RdbStore).querySql(sqlStr)

目前的异步回调方法使用的是FRRT的能力,FRRT再回抛给event loop,并非自动加入到taskpool中,FRRT可以参考:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/_f_f_r_t-V5

当然如果想手动添加,也可以使用taskpool

分享
微博
QQ
微信
回复
2025-01-10 10:23:47
相关问题
如何对一个文件进行读写操作
927浏览 • 1回复 待解决
harmonyos怎么读写文件
11808浏览 • 1回复 已解决
HarmonyOS 文件读写问题
521浏览 • 1回复 待解决
鸿蒙系统文件读写权限如何设置?
1179浏览 • 0回复 待解决
HarmonyOS文件读写权限问题
850浏览 • 1回复 待解决
HarmonyOS文件读写相关问题
1161浏览 • 1回复 待解决
如何查询系统下载任务并进行管理
2081浏览 • 1回复 待解决
HarmonyOS线程周期执行任务
1594浏览 • 1回复 待解决
HarmonyOS native层文件读写权限
419浏览 • 1回复 待解决
HarmonyOS 文件读写在哪找
482浏览 • 1回复 待解决
关系数据库RdbStore执行sql语句失败
2082浏览 • 1回复 待解决
HarmonyOS 文件读写权限如何获得?
1022浏览 • 1回复 待解决