Goのチャンネルを開いたままにしておくことはできますか?メモリリークにつながるでしょうか?次のコードはOKですか?チャンネルを開いたままにしてもよろしいですか?
func (requestCh chan<- Request) GetResponse(data RequestData) Response {
reply := make(chan Response)
requestCh <- Request{data: data, replyCh: reply}
return <-reply
}
私はリンクの応答に同意できません。私は2GBの範囲でメモリリークがありました。閉鎖を追加すると同時に、間欠泉が細流になりました。 – Richard
@リチャード:スレッド全体を注意深く読んでください。 'gcgo'の作者と' gccgo'の作者は、 'close'を探していない限り、' close'sチャンネルは必要ではないと言っています。それは権威あるアドバイスです。 – peterSO
@peterSOさん、それは私が見たことを知っているかもしれませんが、それは私が報告したものですので、私を却下しないでください。 – Richard