HarmonyOs鸿蒙开发实战(23)=>Promise和async/await(异步并发)
·
1.并发概述
- 并发是指在同一时间内,存在多个任务同时执行的情况。对于多核设备,这些任务可能同时在不同CPU上并行执行。对于单核设备,多个并发任务不会在同一时刻并行执行,但是CPU会在某个任务休眠或进行I/O操作等状态下切换任务,调度执行其他任务,提升CPU的资源利用率。
- 为了提升应用的响应速度与帧率,避免耗时任务对UI主线程的影响,ArkTS提供了异步并发处理策略。
2.异步并发概述
异步并发是指异步代码在执行到一定程度后会被暂停,以便在未来某个时间点继续执行,这种情况下,同一时间只有一段代码在执行。ArkTS通过Promise和async/await提供异步并发能力,适用于单次I/O任务的开发场景
3.Promise
3.1基础概念
- Promise是一种用于处理异步操作的对象,可以将异步操作转换为类似于同步操作的风格,以方便代码编写和维护
- 最基本的用法是通过构造函数实例化一个Promise对象,同时传入一个带有两个参数的函数,通常称为executor函数。executor函数接收两个参数:resolve和reject,分别表示异步操作成功和失败时的回调函数
3.2案例1->通过Promise异步网络请求语录信息,渲染到页面上,效果截图
一. 效果截图
二. 代码思路及截图=> 在Viewmodel中发起网络请求,在view监听回调拿到结果渲染页面
4.async/await
4.1.基础概念
- async/await是一种用于处理异步操作的Promise语法糖,使得编写异步代码变得更加简单和易读
- 通过使用async关键字声明一个函数为异步函数,并使用await关键字等待Promise的解析
- 以同步的方式编写异步操作的代码
- async函数是一个返回Promise对象的函数,用于表示一个异步操作。在async函数内部,可以使用await关键字等待一个Promise对象的解析,并返回其解析值。如果一个async函数抛出异常,那么该函数返回的Promise对象将被拒绝,并且异常信息会被传递给Promise对象的onRejected()方法。
4.2.案例1中代码,改成async/await模式,代码截图如下
第一步
第二步
5.粉丝福利,持续更新
更多推荐







所有评论(0)