最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序基礎(chǔ)教程之worker線程的使用方法

 更新時(shí)間:2019年07月15日 10:41:34   作者:甚時(shí)躍馬歸來  
這篇文章主要給大家介紹了關(guān)于微信小程序基礎(chǔ)教程之worker線程的使用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用微信小程序具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧

前言

我們知道js是單線程的,在有時(shí)候需要處理一些密集計(jì)算或者是高延遲的時(shí)候,總會(huì)出現(xiàn)不便。而且,現(xiàn)在的cpu都是多核的,單線程也無法充分發(fā)揮電腦的計(jì)算能力。正是基于這種情況,才有了worker的誕生。由于微信小程序官方的教程比較看不懂...所以本篇主要介紹一下worker在小程序中的用法。

worker的一些說明

本篇主要是在小程序中使用worker,因?yàn)檎f明部分也是和小程序相關(guān)。

1、主線程和worker線程之間是通過消息來通信的,主線程不能直接調(diào)用worker線程中的函數(shù)

2、worker線程中不能使用使用wx系列的api。

步驟說明

小程序中,worker用法主要分為3步(按我個(gè)人的劃分),分別是:配置、主線程中創(chuàng)建調(diào)用和銷毀、worker線程中實(shí)現(xiàn)。

步驟一:配置

在app.json中配置worker目錄,如下圖(具體需要自己一一對(duì)應(yīng)目錄)

步驟二:主線程中創(chuàng)建調(diào)用和銷毀

這一步需要注意的就是,創(chuàng)建時(shí)填寫的是絕對(duì)路徑,其他基本沒什么問題。例如以下代碼,我們創(chuàng)建了worker線程,并向其發(fā)送了1個(gè)對(duì)象,對(duì)象中x=10和y=2。然后在接收到worker線程的消息時(shí),打印出來。

// welcome.js
 onLoad: function (options) {

  const worker = wx.createWorker('/worker/myworker.js');
  worker.postMessage({
   x : 10,
   y : 2
  });

  worker.onMessage(function(res){
   console.log('這是主線程打印的')
   console.log(res)
  });
  
 },

worker線程中實(shí)現(xiàn)

worker中其實(shí)是默認(rèn)注入了一個(gè)叫worker的對(duì)象,直接調(diào)用監(jiān)聽消息和發(fā)送消息即可。如以下代碼:

// myworker.js
worker.onMessage(function(res){
 console.log('這是worker內(nèi)部線程打印的')
 console.log(res)
 let sum = add(res.x,res.y);
 worker.postMessage({
  sum : sum
 })
});

function add(x,y){
 return x+y;
}

打印代碼如下圖:

小結(jié)

worker使用方法就是這樣了,一般來說密集計(jì)算和高延遲的代碼片段我們會(huì)放入其中,其他的話在主線程直接執(zhí)行就好了。

好的,以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Validform表單驗(yàn)證總結(jié)篇

    Validform表單驗(yàn)證總結(jié)篇

    這篇文章主要介紹了Validform表單驗(yàn)證,包括通用表單驗(yàn)證方法的知識(shí),本文給大家介紹的非常詳細(xì)具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-10-10
  • javascript靜態(tài)的url如何傳遞

    javascript靜態(tài)的url如何傳遞

    javascript靜態(tài)的url如何傳遞...
    2007-05-05
  • Three.js中如何使用CSS3DRenderer和CSS3DSprite實(shí)現(xiàn)模型標(biāo)簽文字

    Three.js中如何使用CSS3DRenderer和CSS3DSprite實(shí)現(xiàn)模型標(biāo)簽文字

    在Three.js中,使用CSS3DRenderer和CSS3DSprite可以輕松地實(shí)現(xiàn)模型標(biāo)簽文字的效果,為場(chǎng)景中的模型提供更直觀的信息展示,本文將介紹如何使用這兩個(gè)工具來實(shí)現(xiàn)模型標(biāo)簽文字,并提供相應(yīng)的代碼示例,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • 最新評(píng)論

    西昌市| 沅陵县| 龙州县| 科技| 基隆市| 淮南市| 古蔺县| 库车县| 酒泉市| 夏河县| 青铜峡市| 鸡西市| 灵山县| 景德镇市| 兰考县| 海安县| 米林县| 鲁甸县| 建德市| 尚志市| 甘肃省| 垫江县| 宁波市| 瑞丽市| 固阳县| 延庆县| 炎陵县| 漾濞| 溆浦县| 陕西省| 汕尾市| 兴化市| 富民县| 乐亭县| 巴林左旗| 安陆市| 武胜县| 平山县| 龙山县| 康定县| 冕宁县|