Java多线程的顺序问题

J2EE 码拜 8年前 (2016-03-20) 1128次浏览
如题,情景是这样的。
本人用HttpClient去抓网站的新闻数据,用了多线程
问题是,新闻数据是多页的。本人把要请求的网页地址用String数组保存起来了。相似这样

String[] url={"a_1.html","a_2.html","a_3.html"};//url地址是有这样规律的

上边的3个网页,组成了一个完整的新闻报道,
然后本人启动多线程,数据也能抓取到,但是顺序不对啊。在控制台输出的顺序是1、3、2这个顺序。把新闻内容提取出来之后,顺序都不对,没办法读。
本人的问题是怎么做才能让新闻的内容按正确顺序输出啊。就是按本人url给定的顺序进行输出

解决方案

10

一般情况下,是不需要按先后顺序的情况下才使用多线程啊.

10

可以把你的数据先缓存起来(例如按照页码,放在一个集合里面),再有序输出啊。

20

线程join可以解决。
同时Callable+ExecutorService可以解决。

10

java多线程的执行顺序是看系统分配的,系统分给谁,谁就先执行

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Java多线程的顺序问题
喜欢 (0)
[1034331897@qq.com]
分享 (0)