成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

js 利用數(shù)組隊(duì)列模擬多線程操作

yimo / 1379人閱讀

摘要:不知道下面的想法對不對,如有錯(cuò)誤還請大佬斧正需求分析有一批設(shè)備,數(shù)量很多,需要為他們開啟遠(yuǎn)程驅(qū)動(dòng)即調(diào)用后臺(tái)的遠(yuǎn)程驅(qū)動(dòng)接口問題是后臺(tái)處理遠(yuǎn)程驅(qū)動(dòng)只能一臺(tái)一臺(tái)設(shè)備處理,如果設(shè)備數(shù)量很多,后臺(tái)在內(nèi)處理不完就會(huì)最開始的辦法,將所以設(shè)備統(tǒng)統(tǒng)交給后臺(tái),

不知道下面的想法對不對,如有錯(cuò)誤還請大佬斧正 需求分析

有一批設(shè)備,數(shù)量很多,需要為他們開啟遠(yuǎn)程驅(qū)動(dòng)(即調(diào)用后臺(tái)的遠(yuǎn)程驅(qū)動(dòng)接口),問題是后臺(tái)處理遠(yuǎn)程驅(qū)動(dòng)只能一臺(tái)一臺(tái)設(shè)備處理,如果設(shè)備數(shù)量很多,后臺(tái)php 在30s 內(nèi)處理不完就會(huì) timeout

最開始的辦法,將所以設(shè)備統(tǒng)統(tǒng)交給后臺(tái),接口只請求一次,這樣做的結(jié)果是,這個(gè)請求常常超時(shí)(不可用)
因?yàn)楹笈_(tái)無法一次處理這么多數(shù)據(jù),所以請求超時(shí)

第二種想法:將所有設(shè)備分組,比如 3個(gè)一組,然后循環(huán)分組好的列表數(shù)組,在循環(huán)內(nèi)部用閉包進(jìn)行訪問請求
這樣做的結(jié)果是會(huì)有很多個(gè)ajax請求在同時(shí)進(jìn)行,也無法得到所有請求結(jié)束的時(shí)刻的鉤子

第三種想法(我們老大的想法):模擬線程操作,模擬同時(shí)開啟多個(gè)線程,所有請求即設(shè)備列表放在一個(gè)線程池內(nèi)(數(shù)組),每個(gè)線程的工作,只有當(dāng)本次工作完成后,才可以繼續(xù)去線程池內(nèi)去拿新任務(wù)(即發(fā)送新情求),這樣就可以控制同時(shí)請求的個(gè)數(shù)(線程數(shù))以及請求結(jié)束的時(shí)刻的鉤子。

代碼



    
    Document


    
    

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/84299.html

相關(guān)文章

  • javascript:線程與偽線程

    摘要:偽線程重點(diǎn)瀏覽器的內(nèi)核是多線程的,一個(gè)瀏覽器一般至少實(shí)現(xiàn)三個(gè)常駐線程引擎線程,渲染線程,瀏覽器事件觸發(fā)線程。當(dāng)我們要循環(huán)過百萬級(jí)的數(shù)據(jù)甚至億的時(shí)候怎么辦那就用模擬一個(gè)多線程。 web worker 這里就不多說了,主要說偽線程。因?yàn)閣eb worker不能操作dom元素,很多時(shí)候用不上。 偽線程 重點(diǎn):瀏覽器的內(nèi)核是多線程的,一個(gè)瀏覽器一般至少實(shí)現(xiàn)三個(gè)常駐線程:javascript引擎...

    genefy 評(píng)論0 收藏0
  • 夯實(shí)基礎(chǔ)-JavaScript異步編程

    摘要:調(diào)用棧被清空,消息隊(duì)列中并無任務(wù),線程停止,事件循環(huán)結(jié)束。不確定的時(shí)間點(diǎn)請求返回,將設(shè)定好的回調(diào)函數(shù)放入消息隊(duì)列。調(diào)用棧執(zhí)行完畢執(zhí)行消息隊(duì)列任務(wù)。請求并發(fā)回調(diào)函數(shù)執(zhí)行順序無法確定。 異步編程 JavaScript中異步編程問題可以說是基礎(chǔ)中的重點(diǎn),也是比較難理解的地方。首先要弄懂的是什么叫異步? 我們的代碼在執(zhí)行的時(shí)候是從上到下按順序執(zhí)行,一段代碼執(zhí)行了之后才會(huì)執(zhí)行下一段代碼,這種方式...

    shadowbook 評(píng)論0 收藏0
  • 瀏覽器渲染機(jī)制

    摘要:瀏覽器渲染進(jìn)程瀏覽器內(nèi)核進(jìn)程,內(nèi)部是多線程的默認(rèn)每個(gè)頁面一個(gè)進(jìn)程,互不影響。事件觸發(fā)線程歸屬于瀏覽器而不是引擎,用來控制事件循環(huán)可以理解成引擎自己都忙不過來,需要瀏覽器另開線程協(xié)助。 線程和進(jìn)程 進(jìn)程和線程的概念可以這樣理解: 進(jìn)程是一個(gè)工廠,工廠有它的獨(dú)立資源--工廠之間相互獨(dú)立--線程是工廠中的工人,多個(gè)工人協(xié)作完成任務(wù)--工廠內(nèi)有一個(gè)或多個(gè)工人--工人之間共享空間 工廠有多個(gè)工人...

    appetizerio 評(píng)論0 收藏0
  • 瀏覽器渲染機(jī)制

    摘要:瀏覽器渲染進(jìn)程瀏覽器內(nèi)核進(jìn)程,內(nèi)部是多線程的默認(rèn)每個(gè)頁面一個(gè)進(jìn)程,互不影響。事件觸發(fā)線程歸屬于瀏覽器而不是引擎,用來控制事件循環(huán)可以理解成引擎自己都忙不過來,需要瀏覽器另開線程協(xié)助。 線程和進(jìn)程 進(jìn)程和線程的概念可以這樣理解: 進(jìn)程是一個(gè)工廠,工廠有它的獨(dú)立資源--工廠之間相互獨(dú)立--線程是工廠中的工人,多個(gè)工人協(xié)作完成任務(wù)--工廠內(nèi)有一個(gè)或多個(gè)工人--工人之間共享空間 工廠有多個(gè)工人...

    lncwwn 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<