2
我有以下功能,以壓縮的字節數組:golang:字節數組的gzip的或zlib壓縮零星掛起
func compress(input []byte) []byte {
var buf bytes.Buffer
compr := gzip.NewWriter(&buf)
compr.Write(input) // here it appears to hang until
// Enter is pressed
compr.Close()
output := buf.Bytes()
return output
}
偶爾的功能將掛起。當我按[Enter]時,功能將繼續並返回預期結果。我在這裏錯過了什麼嗎?
即使給出相同的輸入,它也會掛起五次中的一次。無論我使用gzip還是zlib,都沒關係。
我使用去1.6在Linux x86_64的
你真的應該養成檢查錯誤的習慣。你確定你的代碼是否掛起,而不僅僅是你的終端沒有刷新? – icza
@icza:我在每行後面添加了一個打印語句來檢查。有時它只會在'compr:= gzip.NewWriter(&buf)'後立即打印語句。終端不掛;光標會急切地閃爍,直到我按下Enter鍵,恰好被輸入下一個需要用戶輸入的函數。在這種特殊情況下是否有其他方法來檢查錯誤? – Manuel
你能否提供一個[MCVE](http://stackoverflow.com/help/mcve)仍然會產生你的問題? – icza