This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2015-11-18
Channels
- # admin-announcements (4)
- # beginners (306)
- # boot (191)
- # bristol-clojurians (4)
- # business (3)
- # cbus (4)
- # cider (6)
- # cljsrn (51)
- # clojure (147)
- # clojure-canada (1)
- # clojure-conj (6)
- # clojure-japan (2)
- # clojure-poland (8)
- # clojure-russia (57)
- # clojure-sg (1)
- # clojurecup (1)
- # clojurescript (229)
- # core-async (4)
- # cursive (47)
- # data-science (2)
- # datomic (3)
- # emacs (6)
- # events (1)
- # hoplon (16)
- # immutant (33)
- # jobs (1)
- # ldnclj (7)
- # off-topic (25)
- # om (69)
- # onyx (7)
- # re-frame (35)
- # reagent (3)
- # yada (4)
Is there any information anywhere on when go loops and the like get garbage collected? A lot of tutorials create never-ending loops and I wonder where the references to them are stored. Do they belong to the channel and get GCed when the channels goes away? Are we responsible for detecting the closing of the channel and ending the loop?
The only discussion I have found so far is: http://stackoverflow.com/questions/29879996/how-do-clojure-core-async-channels-get-cleaned-up
@ska: go
blocks are attached to whatever channel they are currently "parked" on. When the channel is eligible for GC, so is the go
block. In general, it is a good idea to have a termination condition in a go
loop that stops when the channel is closed.
There is no global registry of go
blocks.