This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-01-31
Channels
- # architecture (5)
- # beginners (35)
- # boot (150)
- # cider (1)
- # clara (7)
- # cljs-dev (131)
- # cljsrn (10)
- # clojure (76)
- # clojure-austin (3)
- # clojure-berlin (1)
- # clojure-brasil (1)
- # clojure-chicago (2)
- # clojure-dusseldorf (1)
- # clojure-italy (30)
- # clojure-nl (2)
- # clojure-russia (40)
- # clojure-serbia (2)
- # clojure-spec (25)
- # clojure-uk (13)
- # clojured (2)
- # clojurescript (106)
- # core-async (29)
- # datascript (65)
- # datomic (38)
- # emacs (8)
- # funcool (8)
- # hoplon (6)
- # jobs (3)
- # klipse (93)
- # luminus (16)
- # lumo (4)
- # off-topic (2)
- # om (11)
- # onyx (13)
- # pedestal (4)
- # protorepl (3)
- # re-frame (40)
- # reagent (31)
- # ring (6)
- # ring-swagger (4)
- # slack-help (5)
- # spacemacs (13)
- # untangled (17)
- # vim (2)
Hi, I've just started playing around with Catacumba and Clojure and I wanted to ask a quick question. Most of my routes so far map directly to a database call which I'm wrapping in the Catacumba blocking function. Now I'm moving to routes which invoke multiple blocking calls and so I started by doing everything in a go block (with the blocking calls putting values onto channels when complete) for better expression. However doing this gives the error around the blocking function not being called from a compute thread due to it using the go thread pool . I was wondering what would be the best of way of structuring my code, can I get the blocking calls to work in a go block, or should I replace the blocking call with the thread based put and take async functions ( <!! / >!! ) or should I do something else? Any advice is appreciated!
if you have async server the blocking calls you should defer them to different pool of execution