久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

分布式數據對象:超級終端的“全局變量”

  在3月底發布的OpenHarmony v3.1 Release版本中,新增了分布式數據對象特性。什么是分布式數據對象呢?本期就讓我們一起來了解一下~

  一、背景介紹

  OpenHarmony作為分布式操作系統,支持運行在不同的終端設備上。這些終端設備通過跨端遷移和多端協同等,可以為用戶提供豐富、流暢的全場景體驗。在這種分布式場景下,不同設備之間需要進行數據互通來實現設備間的配合。

  下面先看兩個分布式場景的示例:

  示例1:可觸屏和TV的協作

  在TV/PAD上觀看視頻時,在可觸屏設備上控制TV/PAD上的播放狀態、進度、音量和速度等,實現多端控制。

分布式數據對象:超級終端的“全局變量”

圖1 多端控制,解放設備限制

  示例2:詞典筆同步翻譯

  使用詞典筆掃描書本內容,在手機/PAD上同步展示翻譯結果、內容鏈接、詞典、例句和音標等。

分布式數據對象:超級終端的“全局變量”

圖2 同步翻譯,學習不限小屏

  要實現上面兩個示例的功能,首先必須實現設備之間的數據同步。傳統方式下,設備之間的數據同步,需要開發者完成消息處理邏輯,包括:建立通信鏈接、消息收發處理、錯誤重試、數據沖突解決等操作,工作量非常大。而且設備越多,調試復雜度將呈指數增長。是否有更簡單的實現方式?經過分析,我們發現,示例中的播放狀態、進度、音量和速度等其實都是變量。如果這些變量支持“全局”訪問,那么開發者跨設備訪問這些變量就能像操作本地變量一樣,數據就能夠自動高效、便捷地實現多端同步了。

  為此,本次OpenHarmony v3.1 Release版本新增了分布式數據對象特性。分布式數據對象為開發者在分布式應用場景下提供簡單易用的JS接口,輕松實現多設備間同應用的數據協同,同時設備間可以監聽對象的狀態和數據變更。與傳統方式相比,分布式數據對象大大減少了開發者的工作量。

  (為方便描述,后文中“分布式數據對象”也簡稱為“對象”。)

  二、原理解析

  這么簡單高效的分布式數據對象技術具體如何實現的呢?讓我們來一一解析~

  1. 對象的數據同步

  分布式數據對象,最重要的功能就是對象之間的數據同步。可信組網內的設備可以在本地創建分布式數據對象,并設置sessionID。不同設備上的分布式數據對象,通過設置相同的sessionID,建立對象之間的同步關系。

  如圖3所示,設備A和設備B上的“分布式數據對象1”,其sessionID均為session1,這兩個對象建立了session1的同步關系。

分布式數據對象:超級終端的“全局變量”

圖3 對象的同步關系

  一個同步關系中,一個設備只能有一個對象加入。比如圖3中,設備A的“分布式數據對象1”已經加入了session1的同步關系,所以,設備A的“分布式數據對象2”就加入失敗了。

  建立同步關系后,每個session有一份共享對象數據。加入了同一個session的對象,支持以下操作:

  (1)讀取/修改session中的數據。

  (2)監聽數據變更,感知其他對象對共享對象數據的修改。

  (3)監聽狀態變更,感知其他對象的加入和離開。

  關于分布式數據對象的數據同步,值得注意的是,同步的最小單位是“屬性”。比如,圖4中對象1包含三個屬性:name、age和parents。當其中一個屬性變更時,則數據同步時只需同步此變更的屬性。

分布式數據對象:超級終端的“全局變量”

圖4 數據視圖

  2. 對象的生命周期

  接下來,我們從生命周期的角度來全面認識一下分布式數據對象。

分布式數據對象:超級終端的“全局變量”

圖5 生命周期

  如圖5所示,對象包括三種狀態:未初始化、本地對象和分布式對象。這三種狀態說明如下:

分布式數據對象:超級終端的“全局變量”

圖6 對象的三種狀態

  根據條件變化,對象在這三種狀態之間會來回切換:

  最開始,對象處于未初始化狀態。實例化之后,對象就從未初始化狀態切換到本地對象狀態。給對象設置sessionID,收到對端設備對象上線通知后,此時可以跨設備同步數據了,對象就進入了分布式對象狀態。

  本端或遠端設備下線,或者sessionID被清除,那么對象又切回本地對象狀態。分布式對象實例和對應的內存數據庫都保存在應用程序的進程空間,當應用程序退出后,分布式對象和內存數據庫也隨之銷毀,對象直接進入未初始化狀態。

  三、開發約束及案例

  經過上面的介紹,大家對分布式數據對象已經有了充分的了解了,下面就要介紹開發者們最關心的“怎么用”的問題了。

  在使用分布式數據對象之前,我們先說明一下相關的開發約束:

  1. 單個應用程序最多只能創建16個分布式數據對象實例。

  2. 考慮到性能和用戶體驗,最多不超過3個設備進行數據協同。

  3. 考慮到性能和用戶體驗,分布式數據對象大小限制在500KB以內。

  4. 分布式數據對象的數據同步發生在同一個應用程序下,且同session ID之間。

  接下來,我們通過一個簡單的開發案例來講解如何使用分布式數據對象。此案例中,設備A和設備B分別創建一個包含3個屬性的對象,這兩個對象加入到同一個session,建立同步關系。一個對象的屬性變更會自動同步到另一個對象,從而實現 “全局變量”效果。

  通過此案例,我們能夠掌握分布式數據對象的基本操作,包括:

  1. 創建對象

  2. 設置sessionID

  3. 設置監聽對象變更的回調

  4. 監聽狀態變更

  代碼示例如下:

  1. 設備A的JS代碼示例:

分布式數據對象:超級終端的“全局變量”

      本期,我們為大家講解了分布式數據對象的產生背景、原理及開發案例。如果你想體驗更詳細的分布式數據對象,歡迎加入OpenHarmony開源項目,項目對應分布式數據庫倉庫地址:

  https://gitee.com/openharmony/distributeddatamgr_objectstore

  后續倉庫還將陸續發出分布式數據對象的sample哦,敬請期待!

特別提醒:本網信息來自于互聯網,目的在于傳遞更多信息,并不代表本網贊同其觀點。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,并請自行核實相關內容。本站不承擔此類作品侵權行為的直接責任及連帶責任。如若本網有任何內容侵犯您的權益,請及時聯系我們,本站將會在24小時內處理完畢。

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
亚州av日韩av| 亚洲精品乱码日韩| 日本欧美不卡| 中文亚洲欧美| 欧美午夜三级| 精品国产a一区二区三区v免费| 国产精品99一区二区三| 国产尤物精品| 日韩精品欧美大片| 国产成人精品一区二区三区免费| 亚洲无线一线二线三线区别av| 亚洲午夜免费| 精品在线网站观看| 亚洲伦乱视频| 美女网站久久| 欧美精品aa| 日本精品不卡| 亚洲va久久| 在线看片国产福利你懂的| 91成人精品视频| 日韩精品视频在线看| 韩国久久久久久| 亚洲人亚洲人色久| 国产v日韩v欧美v| 天堂成人免费av电影一区| 国产精品theporn| 婷婷亚洲五月色综合| 欧美视频久久| 久久精品1区| 国产欧美日韩精品高清二区综合区 | 久久丁香四色| 亚洲女同中文字幕| 国产精品对白久久久久粗| 亚洲精品va| 久久精品亚洲| 亚洲视频国产精品| 国产精品亚洲一区二区三区在线观看| 综合色一区二区| 中文字幕成在线观看| 日本亚洲三级在线| 日韩国产一区二区三区| 亚洲精品第一| 99精品视频精品精品视频| 日韩国产在线一| 91精品一区国产高清在线gif | 中日韩男男gay无套| 狠狠久久伊人| 日韩一二三区在线观看| 成人啊v在线| 欧美国产专区| 日韩在线视频一区二区三区| 久久国产中文字幕| 久久久免费人体| 免费人成精品欧美精品| 日韩国产激情| 欧美亚洲一级| 成人午夜网址| 亚洲欧美日韩国产一区| 欧美激情网址| 丝袜诱惑制服诱惑色一区在线观看| 国产精品成人国产| 黄色在线一区| 国产一区二区三区国产精品| 亚洲在线观看| 国产成人a视频高清在线观看| 视频一区二区三区入口| 国产一区国产二区国产三区| 99香蕉国产精品偷在线观看| 欧美91在线| 天使萌一区二区三区免费观看| 国产成人免费视频网站视频社区| 日本亚洲不卡| 国产精品嫩草99av在线| 高清精品久久| 欧美日韩黄网站| 亚洲激情二区| 日韩高清中文字幕一区二区| 国产精品流白浆在线观看| 老鸭窝毛片一区二区三区| 新版的欧美在线视频| 日韩av一区二区三区四区| 婷婷色综合网| 成人一区而且| 国产欧美日韩一区二区三区四区| 久久国产99| 欧美成人综合| 日韩在线高清| 欧美国产极品| 欧美日韩亚洲一区三区| 男人操女人的视频在线观看欧美| 99久久激情| 麻豆视频在线观看免费网站黄| 久久狠狠久久| 午夜久久av| 综合激情视频| 亚洲深夜福利| 婷婷精品视频| 黄毛片在线观看| 麻豆国产精品视频| 国产精品一线| 日本视频在线一区| 一区二区三区四区精品视频| 日韩一级精品| 黄色成人精品网站| 99久久久久国产精品| 亚洲va中文在线播放免费| 麻豆mv在线观看| 91综合网人人| 日本а中文在线天堂| 国产免费av国片精品草莓男男| 日韩国产在线一| 免费黄网站欧美| 91久久久精品国产| 亚洲二区在线| 欧美~级网站不卡| 国产精品av一区二区| 色爱av综合网| 99久久婷婷| 在线成人直播| 影院欧美亚洲| 日韩午夜av| 亚洲经典在线| 久色成人在线| 亚洲aa在线| 日韩精品免费视频人成| 日韩**一区毛片| 欧美日韩中出| 久久激情五月婷婷| 青青国产91久久久久久| 国产欧美三级| 久久99精品久久久久久园产越南| 国产精久久一区二区| 精品久久91| 肉色欧美久久久久久久免费看| 精品久久美女| 久久精品在线| 国产精品美女久久久浪潮软件| 免费成人在线影院| 日韩精品亚洲aⅴ在线影院| 欧美日本不卡高清| 久久男人av| 久久国产亚洲精品| 久久国产高清| 久久亚洲二区| 欧美影院视频| 久久99高清| 成人久久久久| 久久电影一区| 亚洲aa在线| 久久香蕉网站| 免费毛片在线不卡| 日本精品一区二区三区在线观看视频| 你懂的国产精品| 在线日韩av| 亚洲人成高清| 久久伊人亚洲| 成人av动漫在线观看| 日韩精品第二页| 国产精品v亚洲精品v日韩精品| 岛国av免费在线观看| 午夜日韩福利| 国产日韩欧美高清免费| av最新在线| 国产精品社区| 久久不见久久见中文字幕免费| 亚洲v在线看| 日韩1区2区日韩1区2区| 国产不卡人人| 一区二区三区四区精品视频| 久久免费福利| 好看不卡的中文字幕| 欧美片网站免费| 日本精品不卡| 亚洲一区有码| 综合日韩av| 日韩高清三区| 久久麻豆精品| 国产精品qvod| 欧美日韩四区| 麻豆视频观看网址久久| 午夜精品网站| 精品国产a一区二区三区v免费| 夜夜嗨网站十八久久| 国产精品视频一区视频二区| 亚洲网站视频| 你懂的网址国产 欧美| 日韩午夜黄色| 国产成人久久精品麻豆二区| 国产伊人精品| 国产精品a久久久久| 国产精品毛片一区二区三区| 久久av资源| 日本欧美在线看| 中文字幕在线官网| 日韩av中文字幕一区二区| 91精品99| 美女av在线免费看| 欧美日韩夜夜| 日本欧美在线看| 99久久精品国产亚洲精品|