色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Android下,rxJava+retrofit 并發上傳文件和串行上傳文件的效率為什么差不多?

瀏覽:95日期:2024-02-28 16:07:55

問題描述

有個功能需要同時上傳N個文件。代碼如下:

ApiService as = ApiManager.getApiService(); final ExecutorService es = Executors.newFixedThreadPool(9);final int count = Bimp.tempSelectBitmap.size();final CountDownLatch finishedLatch = new CountDownLatch(count);final long start = System.currentTimeMillis();for (int k = 0; k < count; k++) { final String fp = Bimp.tempSelectBitmap.get(k).getImagePath(); RequestBody fbody = RequestBody.create(MediaType.parse('image/*'), new File(fp)); as.uploadAttach(fbody) .subscribeOn(Schedulers.from(es)) .observeOn(Schedulers.computation()) .subscribe(new Subscriber<UploadAttachJSON>() {@Overridepublic void onCompleted() {}@Overridepublic void onError(Throwable e) { finishedLatch.countDown(); Log.e('UPLOAD FAILED -------->', fp);}@Overridepublic void onNext(UploadAttachJSON uploadAttachJSON) { finishedLatch.countDown(); sb.append(uploadAttachJSON.url).append(','); Log.e('UPLOADED IMAGE URL -->', uploadAttachJSON.url); h.post(new Runnable() {@Overridepublic void run() { pd.setMessage('正在上傳... ' + (count - finishedLatch.getCount()) + '/' + count);} });} });}try { finishedLatch.await();} catch (InterruptedException e) { e.printStackTrace();}long end = System.currentTimeMillis();Log.e('IMAGE UPLOAD COMPLETED', (end - start) + '');es.shutdown();

以上為并行的寫法。從線程池中拿出N個線程來同時上傳這N個文件。

串行寫法: .subscribeOn(Schedulers.io()) 或者 用Observable.merge來合并這些請求。

結果發現并行和串行所花費的時間幾乎都差不多。。 是不是和android底層有關?這些網絡請求其實最后都被底層給block了,然后串行出去?

問題解答

回答1:

設備的網速是不是有限制

回答2:

有很多因素需要考慮1.自己的代碼實現2.設備底層的傳輸實現3.服務器接收數據的代碼實現

任何一個部分不是并發的,最后的結果就不是并發的

標簽: java
相關文章:
主站蜘蛛池模板: 久久99久久精品久久久久久 | 亚洲欧美日韩国产精品26u | 久草视频资源在线观看 | 日本黄区 | 成人国产在线视频在线观看 | 国产成人精品一区 | 透逼视频| 亚洲美女视频在线 | 男人的天堂免费 | 欧美最黄视频 | 欧美另类特大 | 成人手机在线视频 | 亚洲午夜在线 | 久草免费在线播放视频 | 美女个护士一级毛片亚洲 | 一区中文字幕 | 久热香蕉精品视频在线播放 | 亚洲精品午夜 | 欧美精品亚洲精品日韩 | 日韩在线一区二区 | 久久福利青草精品资源站 | 国产精品午夜国产小视频 | 最新中文字幕乱码在线 | 宫女淫春3在线观 | 高清毛片一区二区三区 | 国产日本欧美高清免费区 | 亚洲激情黄色 | 国产一区二区影院 | 艳女伦交一级毛片 | 欧美亚洲激情视频 | 亚洲99久久久久综合 | 国产成人一区二区三区在线视频 | 国产精品青草久久福利不卡 | 高清午夜看片a福利在线观看琪琪 | 免费a级| 欧美午夜不卡 | 欧美刺激午夜性久久久久久久 | 亚洲国产精品热久久2022 | 欧美一级毛片在线一看 | 九九视频精品在线 | 国产精品每日更新在线观看 |