【鸿蒙应用开发】【HCIA认证】模拟题每日1练(第10题) 原创
大家知道,与FA相比,Service最大的不同在于它不提供用户交互界面,主要用于后台执行任务,比如:播放音乐、下载文件、等等,Service仍将在后台继续运行。由于Service是在主线程中运行的,因此,如果在Service中执行比较耗时的操作,开发者必须在Service中创建子线程来处理,以免阻塞主线程。
当应用中需要执行耗时操作时,究竟是在FA中创建子线程还是在Service中创建子线程来处理呢?强烈建议在Service中!这是因为,FA很容易被用户或系统销毁,如果在FA中创建子线程,那么当FA被销毁之后,不再持有该子线程的引用,从而不能再控制该子线程。此外,在一个FA中创建的子线程,在另一个FA中无法对其进行操作。但是Service就不同了,除非必须回收内存资源,否则系统不会停止或销毁Service。而且,Service是单实例的(在一个设备上,一个Service只存在一个实例),所有的FA都可以与Service进行关联,然后对Service中创建的子线程进行操作,即使FA被销毁了,重新创建FA之后,只要再次与Service建立关联就可以了。因此,在Service中创建子线程来处理耗时操作,就可以放心地销毁FA了。
所以,这道题的说法是错误的。
向大家推荐由我的教学团队开发的视频课程《鸿蒙应用开发HCIA认证超细致精讲》:
https://edu.51cto.com/course/28571.html
鸿蒙应用开发HCIA认证考点说明:
知识点 | 百分比 | 说明 |
1. HarmonyOS介绍 HarmonyOS简介 HarmonyOS架构与安全 HarmonyOS关键特性 HarmonyOS生态 |
15% |
HarmonyOS概念 HarmonyOS架构 HarmonyOS安全 HarmonyOS特性 HarmonyOS生态 |
2. 应用开发入门 课程介绍与应用开发流程简述 开发基础知识框架 |
9% |
应用开发流程 开发基础知识框架 |
3. Ability设计与开发 Feature Ability开发和页面跳转 Particle Ability开发 |
18% |
Feature Ability Particle Ability Ability生命周期 |
4. UI页面设计与开发 Java UI开发 JS UI开发 UI设计 |
31% |
常用布局 常用组件 UI设计思路 |
5. 功能开发:线程管理、数据管理 线程管理 数据管理 |
13% |
线程、多线程 线程框架 常用数据库 分布式数据文件服务 |
6. 功能开发:网络管理、日志管理、其他 网络与连接 日志管理 其他 |
10% |
网络编程 数据连接 日志管理 媒体 安全 AI 设备管理 数据管理 |
7. 功能调测与发布 应用调试 应用发布 |
4% |
调试工具 高效调试 应用发布 |