91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何制作一個小程序框架

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

掃碼添加小助手

加入工程師交流群

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

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

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