多线程高效访问网络
最近在做一个软件,用100个线程同时去访问互联网上的一些资源,程序刚开始网络的利用率很高,但是运行了几分钟后网络的利用率就很低了。100个线程中可能有90个线程都在等待远程服务器的响应,当然我也设置了超时,但是到最后还是出现同样的结果。不晓得大侠有什么好的建议,能够提高网络的利用,而不让程序因为在等待远程服务器响应而“瞎忙”? --------------------编程问答-------------------- 这好像没有什么更好的办法。 --------------------编程问答-------------------- 试试线程池java.util.concurrent.ThreadPoolExecutor
ThreadPoolExecutor pool =
new ThreadPoolExecutor(50,100,10,TimeUnit.SECONDS,
new ArrayBlockingQueue<Runnable>(100));
...
for(int i=0; i<100; i++){
pool.execute(new MyRunenr());
}
具体说明可查看帮助 --------------------编程问答-------------------- Sorry,没看清你的问题,但感觉主要问题不是在本地程序。究竟是远程资源的问题,还是网络问题,应该查查。
补充:Java , Java SE