News for hackers. Stuff that matters.
Re:Coroutines for Go by gkfasdfasdf on Monday July 17, 2023 @04:22PM (#36763515)
Ok so garbage collection is optional, how about garbage generation? Is there any way to manually clean up resources if GOCG=off, or will memory usage continue to grow unbounded as new objects are created?
Re:Coroutines for Go by vaastav on Monday July 17, 2023 @04:25PM (#36763565)
Grows unbounded. I wasn't recommending that one should set GOGC=off. Just making a remark that one could should they choose to do so.

EDIT: Sorry, I misunderstood part of your question. The memory grows unbounded unless you call runtime.GC() which triggers garbage collection. But this is a blocking call and essentially block your whole program.

Re:Coroutines for Go by Cthulhu_ on Monday July 17, 2023 @04:48PM (#36763859)
I think in theory you can write code (or do some tricks) to avoid all heap allocation.
Re:Coroutines for Go by dgb23 on Monday July 17, 2023 @06:07PM (#36764726)
You mean not growing the heap or literally no allocation?
Re:Coroutines for Go by t8sr on Monday July 17, 2023 @06:13PM (#36764785)
"In theory" being the operative words there. Turn on heap escape analysis sometime, you'll be surprised how hard it is to avoid.