我想创建一个像以下代码一样刷新的http连接:
int length100 = 1000;
int position = 0;
while (position < length) {
try {
os.write(postDataBytes, position, length100);
position += length100;
int location = position * 100 / length;
gaugeField.setValue(location);
os.flush();
}
}
此代码适用于无线连接。但是在EDGE和3G上进行测试时,代码只刷新一次,当尝试使用os.write(...);
写入时,会抛出异常StreamConnection: Stream Closed
任何帮助或想法?
答案 0 :(得分:0)
HTTP连接通常不是交互式的。虽然我同意,对于一个正常运行的网络堆栈,应该可以在整个过程中调用flush(),我没有看到完全删除调用所带来的任何困难。
为什么需要在同一个请求中多次调用flush()?