Promise和async/await提供异步并发能力,适用于单次I/O任务的场景开发,本文以使用异步进行单次文件写入为例来提供指导。
实现单次I/O任务逻辑。
import fs from '@ohos.file.fs';
import common from '@ohos.app.ability.common';
async function write(data: string, file: fs.File): Promise< void > {
fs.write(file.fd, data).then((writeLen: number) = > {
console.info('write data length is: ' + writeLen)
}).catch((err) = > {
console.error(`Failed to write data. Code is ${err.code}, message is ${err.message}`);
})
}
采用异步能力调用单次I/O任务。
async function testFunc(): Promise< void > {
let context = getContext() as common.UIAbilityContext;
let filePath: string = context.filesDir + "/test.txt"; // 应用文件路径
let file: fs.File = await fs.open(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
write('Hello World!', file).then(() = > {
console.info('Succeeded in writing data.');
}).catch((err) = > {
console.error(`Failed to write data. Code is ${err.code}, message is ${err.message}`);
})
fs.close(file);
}
testFunc();
审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
开发
+关注
关注
0文章
366浏览量
40804 -
鸿蒙
+关注
关注
57文章
2306浏览量
42728
发布评论请先 登录
相关推荐
鸿蒙OS开发实战:【ArkTS 实现MQTT协议(2)】
1. 协议传输通道仅为TCPSocket
2. 基于HarmonyOS SDK API 9开发
3. 开发语言:ArkTS,TypeScript
鸿蒙OS开发实例:【ArkTS类库多线程CPU密集型任务TaskPool】
CPU密集型任务是指需要占用系统资源处理大量计算能力的任务,需要长时间运行,这段时间会阻塞线程其它事件的处理,不适宜放在主线程进行。例如图像处理、视频编码、数据分析等。
基于多线程并发机制处理CPU密集型任务可以提高CPU
鸿蒙原生应用开发-ArkTS语言基础类库概述
ArkTS语言基础类库是HarmonyOS系统上为应用开发者提供的常用基础能力,主要包含能力如下图所示。
1.提供异步并发和多线程并发的能力。
支持Promise和async/awa
发表于 03-05 15:42
OpenHarmony 应用开发SDK、API 与基础工具
类似于 ArkTS API 上的完整鸿蒙平台能力,开发者可以使用 C API 开发支持鸿蒙应用框架的扩展动态
发表于 09-19 15:45
鸿蒙开发之ArkTS基础知识
一、ArkTS简介 ArkTS是HarmonyOS优选的主力应用开发语言。它在TypeScript(简称TS)的基础上,匹配了鸿蒙的ArkUI框架,扩展了声明式UI、状态管理等相应的能
鸿蒙OS开发实例:【ArkTS类库多线程@Concurrent装饰器校验并发函数】
在使用TaskPool时,执行的并发函数需要使用该装饰器修饰,否则无法通过相关校验。从API version 9开始,该装饰器支持在ArkTS卡片中使用。
鸿蒙OS开发实例:【ArkTS类库异步并发简述Promise】
Promise和async/await提供异步并发能力,是标准的JS异步语法。异步代码会被挂起并在之后继续执行,同一时间只有一段代码执行,适用于单次I/O
鸿蒙OS开发实例:【组件化模式】
组件化一直是移动端比较流行的开发方式,有着编译运行快,业务逻辑分明,任务划分清晰等优点,针对Android端的组件化;与Android端的组件化相比,HarmonyOS的组件化可以说实现起来就颇费
评论