{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreihkzy6rbzackpmzvhz65vjgwxwoupak7v66skebhgmwegxvd7a45i",
"uri": "at://did:plc:iu6sln2l6dttmxhkrixcfav5/app.bsky.feed.post/3motxby3gugv2"
},
"coverImage": {
"$type": "blob",
"ref": {
"$link": "bafkreieew66wicd6emeo55yuab5vihkhc3ukhv6gwgrmais6ncyznwtvyu"
},
"mimeType": "image/png",
"size": 303891
},
"path": "/go/channel-iteration-goroutine-leak/",
"publishedAt": "2026-06-21T00:00:00.000Z",
"site": "https://rednafi.com",
"tags": [
"Go",
"Concurrency",
"Profiling"
],
"textContent": "A for-range over a channel that's never closed leaks the receiver. Why a fixed number of receives is safe, why a range isn't, and how to catch it with Go 1.27's leak profile.",
"title": "Channel iteration and goroutine leak"
}