2014-02-13 7 views
12

alles zu oft, wenn ich core.async aus dem repl a go Block werde von mir weg, weil ich den Kanal, der zum Anhalten verwendet wird, zu verlieren weil ich einen Namespace neu lade. Zum Beispiel, wenn ich dies aus dem repl ausführen:Clojure wie alle blocks zu stoppen oder schließen Sie alle Kanäle in core.async

und dann ich den Namespace neu laden und c ist verloren. Jetzt habe ich "Hallo", spamm meine REPL bis zum Ende der Zeit. Wenn ich alle Kanäle schließen oder alle geblockten Blöcke beenden könnte, würde das den Neustart meiner REPL retten.

Antwort

8

Es gibt keine globale Möglichkeit, die ich kenne. Eine Technik besteht darin, einen Steuerkanal zu verwenden, der zum Abschalten einer beliebigen Schleife verwendet werden kann. Die Sachen könnten gut für einen globalen Kontrollkanal funktionieren.

Verwandte Themen