Java下载系统冻结

时间:2012-02-03 01:28:03

标签: java url download inputstream outputstream

我编写了一个使用以下基本算法下载各种文件的应用程序:

InputStream reader = myURL.openStream();
OutputStream writer = new FileOutputStream(myFile);
byte[] buffer = new byte[153600];
int bytesRead = 0;

while((bytesRead = reader.read(buffer)) > 0)
{ 
    writer.write(buffer, 0, bytesRead);
    buffer = new byte[153600];
}

这适用于我的大多数用户,但是有一些人最近报告了一个问题,即下载过程开始但在一定程度上冻结(一个特定用户报告它总是冻结~10%-15%通过〜30mb下载)。奇怪的是,没有抛出任何异常,这让我相信while循环的条件是导致程序挂起的原因。

我猜对了吗?我有什么可以做的吗?

0 个答案:

没有答案