當(dāng)前位置:
首頁 >
out.flush()和out.close()有什么作用?
發(fā)布時間:2024/1/18
48
豆豆
生活随笔
收集整理的這篇文章主要介紹了
out.flush()和out.close()有什么作用?
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
- flush是把流里的緩沖數(shù)據(jù)輸出,flush以后還能繼續(xù)使用這個OutputStream。
- close是把這個流關(guān)閉了,也就是說以后這個OutputStream就不能用了,不過關(guān)閉之前會把緩沖的數(shù)據(jù)都輸出
關(guān)于flush
吧友的原話:
flush本意是沖刷,這個方法大概取自它引申義沖馬桶的意思,馬桶有個池子,你往里面扔?xùn)|西,會暫時保存在池子里,只有你放水沖下去,東西才會進入下水道。
同理很多流都有一個這樣的池子,專業(yè)術(shù)語叫緩沖區(qū),當(dāng)你print或者write的時候,會暫時保存在緩沖區(qū),并沒有發(fā)送出去,這是出于效率考慮的,因為數(shù)據(jù)不會自己發(fā)送過去,必須有其他機制,而且這個很消耗資源,就像馬桶你需要很多水,才能沖走,你如果扔一點東西,就沖一次水,那你水費要爆表了,同樣如果你寫一行文字,或者一個字節(jié),就要馬上發(fā)送出去,那網(wǎng)絡(luò)流量,CPU使用率等等都要爆表了,所以一般只有在你真正需要發(fā)送否則無法繼續(xù)的時候,調(diào)用flush,將數(shù)據(jù)發(fā)送出去。
總結(jié)
以上是生活随笔為你收集整理的out.flush()和out.close()有什么作用?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 国外知名的源代码网站(转)
- 下一篇: uni-app(uniCloud)云开发