while循環(huán)里面用flush()方法似乎會使拷貝速度慢很多,我用字節(jié)緩沖流的時候,不調用改變緩沖區(qū)的構造方法,默認的8192B,拷貝一個5MB的mp3文件,才用252ms,bufferedoutputstream在調用close()方法的時候不是會flush,我在循環(huán)中加入flush()速度一下就慢下來了。

NeoGranzon
2014-09-19
3 回答
舉報
0/150
提交
取消
2015-08-11
查看了api,發(fā)現(xiàn)BufferedOutputStream的close()方法中會調用flush()方法
2014-11-01
不一定buffer的就快,自己用bytes[]數(shù)組批量讀寫,如果數(shù)組足夠大,速度也是超級快的,看情況使用!
2014-10-24
我也發(fā)現(xiàn)了,感覺寫一個字節(jié),刷新一次緩沖區(qū),也是在一個字節(jié)一個字節(jié)的輸出,所以會很慢,不在循環(huán)中加flush()方法,bufferedoutputstream可能會在緩沖區(qū)滿了之后自動flush,所以會比較快,個人想法,正在尋找依據(jù)中,希望能幫到你。