|
|
1
5
好吧,这就是所有I/O发生的地方(我假设探查器包括readline()等待数据进入所需的所有时间)。你唯一能做的就是用足够大的缓冲区预先初始化StringBuilder,这样它就不必重新分配内存了,但是我认为所有的事情都会因为读取数据所花费的时间而变得微不足道。 除此之外-您受I/O限制。通过网络接收数据只需要时间。
编辑:也可以包括卡萨布兰卡的评论:与其逐行阅读然后添加新行,不如使用一个简单的阅读器,它有一个相当大的缓冲区,可以提供并阻止阅读所有内容。不需要逐行读取,因为您似乎只是复制整个输入数据。手动逐行执行的唯一理由是,如果您希望规范化换行(如
|
|
|
2
0
尝试使用jakarta commons中的ioutils.copy()。 创建bytearrayOutputstream,将httpRequest流中的字节复制到此bytearray,然后使用新字符串(bytes,“utf-8”)创建字符串。 我相信会更快… 但您的代码看起来是为了说明良好的风格和良好的编码而编写的。我真的不明白在这里什么可能如此无效。可能这需要时间,因为您的其他逻辑相对简单,并且写得很好?我的意思是,尽管这段代码花费的时间相对较长,但这不是太关键吗? |
|
|
3
0
检查此[链接文本][1] 这里有很多建议。 〔1〕: Read/convert an InputStream to a String stackoverflow-inputstream2字符串 |
|
|
giantjenga · 优化整数向量到二进制向量的转换 1 年前 |
|
|
Daniel Lobo · 使用约束进行优化 1 年前 |
|
Sergio · python中大量数字的乘法 1 年前 |
|
|
Sergey Dev · 临时表与表变量 1 年前 |
|
|
John · 减少C中的内存消耗++ 1 年前 |