java后台for循环访问网络需要注意哪些?

shuimu_88 发布于 2017/06/14 15:42
阅读 208
收藏 0
for (String key : cameraResMap.keySet()) {
               
                map = monitorStreamService.getStreamData(key,cameraResMap.get(key));
         ...
}

 

这是java后台代码,其中getStreamData(String key,String value)方法中有HttpClient访问网络的操作并且将响应结果处理后返回,
问题是,我需要使用多线程来处理吗?for循环中访问网络,会不会出现异步问题?就是下次循环接收到上次循环返回的值?或者还没响应就执行for循环后面的代码?

更多0

加载中
0
DeMoNHaDeS
DeMoNHaDeS

1、后一次请求与前一次没有依赖关系的话,用多线程处理比较好,下一次请求不必等上一次请求完成再开始。

2、HttpClient访问不会有异步问题,与for无关。

0
bigPig_ink
bigPig_ink

httpClient要看你使用的具体情况:如果循环前后请求相互依赖,那么需要同步请求,循环没问题;如果前后请求没啥关系,那完全可以httpsClient异步调用或者手动多线程

具体情况具体对待

返回顶部
顶部