99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何制作一個(gè)小程序框架

Wildesbeast ? 來(lái)源:掘金 ? 作者:muwoo ? 2020-02-15 13:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

對(duì)于小程序框架實(shí)現(xiàn)原理,在支付寶小程序官方文檔上有這樣一段描述:

與傳統(tǒng)的 H5 應(yīng)用不同,小程序運(yùn)行架構(gòu)分為 webview 和 worker 兩個(gè)部分。webview 負(fù)責(zé)渲染,worker 則負(fù)責(zé)存儲(chǔ)數(shù)據(jù)和執(zhí)行業(yè)務(wù)邏輯。 1.webview 和 worker 之間的通信是異步的。這意味著當(dāng)我們調(diào)用 setData 時(shí),我們的數(shù)據(jù)并不會(huì)立即渲染,而是需要從 worker 異步傳輸?shù)?webview。 2.數(shù)據(jù)傳輸時(shí)需要序列化為字符串,然后通過 evaluateJavascript 方式傳輸,數(shù)據(jù)大小會(huì)影響性能。

概括一下,大致意思是小程序框架核心是通過2個(gè)線程來(lái)完成的,主線程負(fù)責(zé)webView的渲染工作,worker線程負(fù)責(zé)js執(zhí)行。說到這里,你是不是會(huì)產(chǎn)生一個(gè)疑問:為什么多線程通信損耗性能還要搞多線程呢?可能大多數(shù)人都知道因?yàn)閃eb技術(shù)實(shí)在是太開放了,開發(fā)者可以為所欲為。這種情況在小程序中是不允許的,不允許使用