線程模型
線程類型
Stage模型下的線程主要有如下三類:
- 主線程
- 執(zhí)行UI繪制。
- 管理主線程的ArkTS引擎實例,使多個UIAbility組件能夠運行在其之上。
- 管理其他線程的ArkTS引擎實例,例如使用TaskPool(任務(wù)池)創(chuàng)建任務(wù)或取消任務(wù)、啟動和終止Worker線程。
- 分發(fā)交互事件。
- 處理應(yīng)用代碼的回調(diào),包括事件處理和生命周期管理。
- 接收TaskPool以及Worker線程發(fā)送的消息。
- [TaskPool Worker線程]
- 用于執(zhí)行耗時操作,支持設(shè)置調(diào)度優(yōu)先級、負載均衡等功能,推薦使用。
- [Worker線程]
- 用于執(zhí)行耗時操作,支持線程間通信。 TaskPool與Worker的運作機制、通信手段和使用方法可以參考[TaskPool和Worker的對比]。

- 用于執(zhí)行耗時操作,支持線程間通信。 TaskPool與Worker的運作機制、通信手段和使用方法可以參考[TaskPool和Worker的對比]。
說明:
開發(fā)前請熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
- TaskPool自行管理線程數(shù)量,其生命周期由TaskPool統(tǒng)一管理。Worker線程最多創(chuàng)建8個,其生命周期由開發(fā)者自行維護。
- 同一線程中存在多個組件,例如UIAbility組件和UI組件都存在于主線程中。在Stage模型中目前主要使用[EventHub]進行數(shù)據(jù)通信。
- 執(zhí)行
hdc shell命令,進入設(shè)備的shell命令行。在shell命令行中,執(zhí)行ps -p命令,可以查看指定應(yīng)用進程的線程信息。其中,-T 為需要指定的應(yīng)用進程的[進程ID]。

使用EventHub進行線程內(nèi)通信
[EventHub]提供了線程內(nèi)發(fā)送和處理事件的能力,包括對事件訂閱、取消訂閱、觸發(fā)事件等。以UIAbility組件與UI之間的數(shù)據(jù)同步為例,具體使用方法可以參考[UIAbility組件與UI的數(shù)據(jù)同步]。
審核編輯 黃宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
線程
+關(guān)注
關(guān)注
0文章
509瀏覽量
20826 -
鴻蒙
+關(guān)注
關(guān)注
60文章
2963瀏覽量
45883
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
鴻蒙內(nèi)核源碼Task/線程技術(shù)分析
前言 在鴻蒙內(nèi)核中,廣義上可理解為一個Task就是一個線程 一、怎么理解Task 1. 官方文檔是怎么描述線程 基本概念 從系統(tǒng)的角度看,線程是競爭系統(tǒng)資源的最小運行單元。
鴻蒙OS 線程管理開發(fā)指導(dǎo)
場景介紹 如果應(yīng)用的業(yè)務(wù)邏輯比較復(fù)雜,可能需要創(chuàng)建多個線程來執(zhí)行多個任務(wù)。這種情況下,代碼復(fù)雜難以維護,任務(wù)與線程的交互也會更加繁雜。要解決此問題,開發(fā)者可以使用“TaskDispatcher”來
鴻蒙原生應(yīng)用開發(fā)-ArkTS語言基礎(chǔ)類庫多線程并發(fā)概述
并發(fā)模型是用來實現(xiàn)不同應(yīng)用場景中并發(fā)任務(wù)的編程模型,常見的并發(fā)模型分為基于內(nèi)存共享的并發(fā)模型和基于消息通信的并發(fā)模型。
Actor并發(fā)
發(fā)表于 03-22 15:40
鴻蒙原生應(yīng)用開發(fā)-ArkTS語言基礎(chǔ)類庫多線程并發(fā)概述
并發(fā)模型是用來實現(xiàn)不同應(yīng)用場景中并發(fā)任務(wù)的編程模型,常見的并發(fā)模型分為基于內(nèi)存共享的并發(fā)模型和基于消息通信的并發(fā)模型。
Actor并發(fā)
發(fā)表于 03-28 14:35
DevEco Studio AI輔助開發(fā)工具兩大升級功能 鴻蒙應(yīng)用開發(fā)效率再提升
數(shù)據(jù)支撐時提供相關(guān)的延伸指導(dǎo)。這種設(shè)計既保障了鴻蒙技術(shù)支持的專注度,又通過善意引導(dǎo)幫助用戶建立合理預(yù)期,最終實現(xiàn)開發(fā)者體驗與專業(yè)深度的雙提升。
隨著DeepSeek模型使用RAG能力增強之后
發(fā)表于 04-18 14:43
鴻蒙5開發(fā)寶藏案例分享---應(yīng)用并發(fā)設(shè)計
?** 鴻蒙并發(fā)編程實戰(zhàn)指南:解鎖ArkTS多線程黑科技**
嘿,開發(fā)者朋友們! 今天給大家扒一扒鴻蒙官方文檔里藏著的并發(fā)編程寶藏—— 100+實戰(zhàn)場景解決方案 !從金融理財?shù)接螒?/div>
發(fā)表于 06-12 16:19
鴻蒙5開發(fā)寶藏案例分享---跨線程性能優(yōu)化指南
;>Worker</span>做多線程開發(fā)時,總遇到對象跨線程卡頓的問題,原來鴻蒙早就提供了解決方案。下面結(jié)合代碼和實戰(zhàn)案例,帶你徹底玩轉(zhuǎn)性能優(yōu)化!
一、痛點:跨
發(fā)表于 06-12 17:13
BearPi-HM_Nano開發(fā)板鴻蒙OS內(nèi)核編程開發(fā)——Thread多線程
BearPi-HM_Nano開發(fā)板鴻蒙OS內(nèi)核編程開發(fā)——Thread多線程本示例將演示如何在BearPi-HM_Nano開發(fā)板上使用cms
發(fā)表于 04-09 09:50
多線程服務(wù)器編程模型:如何正確使用mutex 和condition variable
本文對多線程服務(wù)器的常用編程模型進行了一個詳細的解讀,本文中的多線程服務(wù)器是運行在 Linux 操作系統(tǒng)上網(wǎng)絡(luò)應(yīng)用程序。介紹了典型的單線程服務(wù)器編程
SCP線程模型特點
線程 混合協(xié)作調(diào)度模型-調(diào)度在具有相同優(yōu)先級的線程之間是協(xié)作的。 ?無需鎖 ?使代碼更簡單,避免了死鎖的情況。 ?它消除了對執(zhí)行上下文/RTOS的依賴,并防止了開銷。 ?事件在線程上下
使用 Taro 開發(fā)鴻蒙原生應(yīng)用 —— 快速上手,鴻蒙應(yīng)用開發(fā)指南
隨著鴻蒙系統(tǒng)的不斷完善,許多應(yīng)用廠商都希望將自己的應(yīng)用移植到鴻蒙平臺上。最近,Taro 發(fā)布了 v4.0.0-beta.x 版本,支持使用 Taro 快速開發(fā)鴻蒙原生應(yīng)用,也可將現(xiàn)有的
摩爾線程與智譜AI完成大模型性能測試與適配
近日,摩爾線程與智譜AI在人工智能領(lǐng)域開展了一輪深入的合作,共同對GPU大模型進行了適配及性能測試。此次測試不僅涵蓋了大模型的推理能力,還涉及了基于摩爾線程夸娥(KUAE)千卡智算集群
鴻蒙中Stage模型與FA模型詳解
【HarmonyOS 5】鴻蒙中Stage模型與FA模型詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##
鴻蒙開發(fā):【線程模型】
評論