国产日韩精品视频_2020久久国产最新免费观看_国内久久久久影院精品_日本一区二区视频在线

并行動態(tài)獲取請求

我想知道如何并行執(zhí)行動態(tài)獲取請求,我已經(jīng)嘗試了12個小時了,但我想不出答案,我到處查看了google和StackOverflow,我真的很累。


      for (const fileindex of filelist) {
        let dcmFilename = `slice_${fileindex}.dcm`
        slices.push( {index:fileindex, filename:dcmFilename} )
          fd.append(dcmFilename, files[fileindex], dcmFilename);
        fd.append('slices', JSON.stringify(slices));
        loopcount += 1
        if (filecount == 24 || loopcount == filelist.length){
          
      if (cursorPos !== false) {
        let scaleFactor = Tegaki.scaleFactor;
        cursorPos.x = parseInt(cursorPos.x / scaleFactor);
        cursorPos.y = parseInt(cursorPos.y / scaleFactor);
        fd.append('x', cursorPos.x);
        fd.append('y', cursorPos.y)
      }

      // Get layer id from index
      if (index !== -1) {
        type = this.layerTypes[index]['id']
      }
      // switch mode from heuristic to pytorch vertebrae for vertebral bone
      if (type === 'vertebral-bone' ){
        mode='PyTorch-Vertebrae'
      }

      // Post to endpoint
      let domain = window.location.origin.replace(':8080', ':5000')
      let list = await fetch(`${domain}/segment?mode=${mode}&type=${type}`,  {    method: 'POST', body: fd   })
      let result = await list.json()
      // do something with result
      // finish then continue the loop and create new body and send a new request
     // clear formdata and continue loop
     fd =  new FormData()
}

我發(fā)送了下面的fetch請求,其中為每個請求生成主體,主體從來都不是同一個主體,主體由函數(shù)動態(tài)生成。是否有一種方法可以一次發(fā)送所有請求,然后等待它們返回響應,然后繼續(xù)我的其余代碼?

? 最佳回答:

您可以將filelist.map()async回調(diào)一起使用,而不是包含awaitfor/of循環(huán)。

由于.map()只是盲目地迭代數(shù)組而不等待任何返回的承諾,因此它將從.map()調(diào)用的所有async回調(diào)返回一個承諾數(shù)組。這些承諾最初將無法實現(xiàn),所有fetch()操作將同時為"in-flight。然后,您可以在返回的承諾數(shù)組上使用await Promise.all(...),以了解它們何時完成:

await Promise.all(filelist.map(async fileindex => {
    let dcmFilename = `slice_${fileindex}.dcm`
    slices.push({ index: fileindex, filename: dcmFilename })
    fd.append(dcmFilename, files[fileindex], dcmFilename);
    fd.append('slices', JSON.stringify(slices));
    loopcount += 1
    if (filecount == 24 || loopcount == filelist.length) {

        if (cursorPos !== false) {
            let scaleFactor = Tegaki.scaleFactor;
            cursorPos.x = parseInt(cursorPos.x / scaleFactor);
            cursorPos.y = parseInt(cursorPos.y / scaleFactor);
            fd.append('x', cursorPos.x);
            fd.append('y', cursorPos.y)
        }

        // Get layer id from index
        if (index !== -1) {
            type = this.layerTypes[index]['id']
        }
        // switch mode from heuristic to pytorch vertebrae for vertebral bone
        if (type === 'vertebral-bone') {
            mode = 'PyTorch-Vertebrae'
        }

        // Post to endpoint
        let domain = window.location.origin.replace(':8080', ':5000')

        let list = await fetch(`${domain}/segment?mode=${mode}&type=${type}`, { method: 'POST', body: fd })
        let result = await list.json()
        // do something with result
        // finish then continue the loop and create new body and send a new request
    }
}));

注意#1:由于您現(xiàn)在并行運行多個fetch操作,因此任何處理其結(jié)果的代碼都不能共享變量。這段代碼中有幾個變量沒有顯示它們的聲明。這些聲明可能應該在這個循環(huán)中,帶有letconst,因此循環(huán)的每個迭代都有一個新的變量,并且您不會在迭代之間共享變量,除非該變量顯式地應該在迭代之間累積。此循環(huán)中沒有本地聲明的可疑變量可能會受到并行操作的影響,包括filecountloopcountcursorPosindexmodefdtype。您沒有在此處顯示整個執(zhí)行上下文,因此我們無法看到足夠的內(nèi)容來對這些內(nèi)容提出完整的建議。

注意#2:包含此if (filecount == 24 || loopcount == filelist.length)的代碼看起來可能容易出現(xiàn)問題。如果您試圖在所有迭代都完成時運行一些代碼,那么在Promise.all()之后運行該代碼比嘗試檢測上一次迭代何時完成要好。記住,您的迭代現(xiàn)在不一定按順序進行,因為您正在并行運行它們。它們將按順序啟動,但不一定按順序完成。

国产日韩精品视频_2020久久国产最新免费观看_国内久久久久影院精品_日本一区二区视频在线

亚洲欧美在线一区| 国产亚洲精品一区二区| 欧美午夜精品久久久久久孕妇| 激情伊人五月天久久综合| 欧美自拍偷拍| 99精品久久久| 欧美日韩色一区| 久久在线视频在线| 在线播放中文字幕一区| 国产精品老牛| 欧美乱大交xxxxx| 亚洲精品免费在线| 欧美成人综合在线| 极品尤物av久久免费看| 国产精品男人爽免费视频1| 欧美激情精品久久久久久黑人| 蜜臀av在线播放一区二区三区 | 国产精品免费网站| 亚洲一区二区在线看| 国产精品国产精品国产专区不蜜| 国产在线视频欧美| 欧美亚洲第一页| 欧美日一区二区在线观看| 欧美α欧美αv大片| 一区二区视频免费完整版观看| 日韩午夜电影av| 国产精品一区免费视频| 亚洲欧美国产日韩中文字幕| 夜夜嗨av色综合久久久综合网 | 久久亚洲精品网站| 亚洲免费av观看| 在线观看日韩国产| 亚洲大片一区二区三区| 国内精品久久久久久久影视麻豆| 亚洲精品一区二| 国产精品美女久久久久久免费| 亚洲一区综合| 亚洲欧美一区二区三区久久 | 欧美在线高清| 亚洲国产精品v| 国产精品日韩电影| 国产欧美日韩综合一区在线播放| 亚洲视频在线观看三级| 国产一区二区在线免费观看| 精品白丝av| 国产精品一区2区| 在线观看av不卡| 国产精品影片在线观看| 欧美大尺度在线观看| 欧美精品久久久久久久免费观看| 91久久视频| 亚洲一区二区免费在线| 亚洲黄色精品| 亚洲视频一区二区| 亚洲三级观看| 亚洲女人小视频在线观看| 久久久久www| 欧美亚洲一区二区三区| 久久久久久夜| 久久精品人人做人人爽| 亚洲女人天堂成人av在线| 日韩亚洲国产欧美| 亚洲高清一区二| 亚洲一级网站| 亚洲一级影院| 欧美黄色一级视频| 国产午夜精品理论片a级探花| 免费不卡欧美自拍视频| 国产精品久久久久久五月尺| 欧美精品在线观看91| 亚洲影院色在线观看免费| 久久婷婷久久| 国产精品区一区二区三| 国产精品亚洲аv天堂网| 国产精品乱人伦一区二区| 欧美日韩综合不卡| 玉米视频成人免费看| 亚洲欧美日韩中文在线制服| 午夜精品久久久久久久久| 亚洲影院污污.| 欧美激情精品久久久久久变态| 亚洲欧美制服另类日韩| 欧美精品在线观看一区二区| 欧美日韩一区二区三区在线看| 欧美日韩一二三区| 亚洲韩国日本中文字幕| 一区二区三区蜜桃网| 久久综合中文| 欧美日本中文字幕| 亚洲国产成人不卡| 久久天堂精品| 激情综合网址| 免费试看一区| 亚洲狠狠婷婷| 亚洲一线二线三线久久久| 久久精品国产99精品国产亚洲性色 | 欧美激情亚洲精品| 亚洲国产网站| 欧美激情中文字幕一区二区| 欧美体内she精视频在线观看| 国产精品三级视频| 尤物网精品视频| 久久久亚洲综合| 在线成人免费视频| 麻豆免费精品视频| 亚洲免费久久| 欧美三区不卡| 亚洲国产va精品久久久不卡综合| 国语自产精品视频在线看一大j8 | 免费欧美电影| 国产精品裸体一区二区三区| 狠狠狠色丁香婷婷综合激情| 久久久人人人| 日韩视频在线播放| 久久久久久一区二区| 黑人极品videos精品欧美裸| 99视频超级精品| 国产欧美日韩亚洲精品| 亚洲美女在线一区| 久久综合狠狠综合久久综青草| 久久人人看视频| 亚洲欧洲一区二区三区久久| 欧美伊久线香蕉线新在线| 欧美日韩一二三四五区| 亚洲欧美日韩精品在线| 国产无一区二区| 一本色道久久综合亚洲精品不| 欧美一级午夜免费电影| 一区二区三区在线视频观看| 亚洲综合国产激情另类一区| 国内自拍亚洲| 欧美日韩第一区| 欧美在线国产| 国产精品久久午夜夜伦鲁鲁| 在线亚洲一区| 欧美激情综合五月色丁香小说 | 狂野欧美一区| 亚洲一区二区三区激情| 欧美乱在线观看| 久久激五月天综合精品| 欧美日韩不卡视频| 亚洲国产成人在线视频| 国产精品欧美在线| 午夜在线视频观看日韩17c| 一区国产精品| 美日韩精品免费| 在线看一区二区| 欧美xxx成人| 最近看过的日韩成人| 国产亚洲成av人在线观看导航| 午夜视频在线观看一区二区三区| 欧美成人精精品一区二区频| 午夜一区在线| 国内精品久久国产| 国产精品推荐精品| 欧美日韩在线亚洲一区蜜芽| 欧美jizzhd精品欧美喷水| 欧美在线关看| 欧美一级免费视频| 国内精品嫩模av私拍在线观看| 久久精品五月婷婷| 亚洲黄网站黄| 欧美日韩精品| 欧美资源在线| 91久久亚洲| 国产欧美日韩中文字幕在线| 久久久久久久综合色一本| 亚洲国产精品福利| 亚洲国产日韩欧美在线99| 欧美日韩精品免费| 欧美日韩国产成人高清视频| 性感少妇一区| 性做久久久久久久免费看| 国产精品久久久久久亚洲毛片| 一区二区三区黄色| 在线一区二区视频| 一区二区三区欧美亚洲| 亚洲无限av看| 在线亚洲国产精品网站| 99av国产精品欲麻豆| 一区二区三区 在线观看视频| 久久人人精品| 制服诱惑一区二区| 一区二区三区视频在线看| 欧美视频在线一区| 久久婷婷综合激情| 亚洲视频一区二区| 亚洲欧美资源在线| 久久久久网址| 亚洲欧美国产毛片在线| 在线欧美小视频| 亚洲伦理在线| 国产真实精品久久二三区| 怡红院av一区二区三区| 亚洲福利在线观看| 一区二区三欧美| 欧美一区二区在线看| 91久久一区二区| 国产亚洲精品aa午夜观看| 你懂的视频欧美|