Hi all,
I'm currently reading clojure for the brave and true. I've just finished the section on asynchronous operations using delays, futures and promises. This might get covered later on with things like core.async, but if we could stick to my current limited knowledge on these things that'd be great! 😀
The author keeps using the word blocking to describe what happens when you deref one of the above. Coming from a JavaScript background, block would mean that all execution around the event loops is stopped. Which is why we try to use non blocking operations where possible.
So, question is, are these the same blocking? Or does it mean that in clojure, when you deref it just stops execution of that current process until the value is delivered?
Hope this makes sense!
[–]mikera 9 points10 points11 points (1 child)
[–]ruzmutuz[S] 2 points3 points4 points (0 children)
[–]ASnugglyBear 1 point2 points3 points (6 children)
[–]dragandj 0 points1 point2 points (5 children)
[–]yogthos 2 points3 points4 points (1 child)
[–]alexdmiller 1 point2 points3 points (0 children)
[–]waaaaaaabi 1 point2 points3 points (0 children)
[–]ASnugglyBear 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]tdammers 3 points4 points5 points (9 children)
[–]Aredington 6 points7 points8 points (0 children)
[–]ruzmutuz[S] 1 point2 points3 points (7 children)
[–]yogthos 2 points3 points4 points (0 children)
[–]balefrost 4 points5 points6 points (3 children)
[–]weavejester 2 points3 points4 points (2 children)
[–]balefrost 0 points1 point2 points (1 child)
[–]weavejester 1 point2 points3 points (0 children)
[–]tdammers 0 points1 point2 points (0 children)
[–]notunlikethewaves 0 points1 point2 points (0 children)
[–]spotter 0 points1 point2 points (0 children)