~/talk

Concurrency with Clojure

Talkat Clojure/north 2020 · 2020-06-25..06-26· [concurrency]
slides:none on file

Workshop shows concrete Clojure concurrency patterns and tradeoffs: futures/promises, atoms produce compare-and-swap semantics, vars race (examples show b counts like 1941/1867/1859 under races) vs atoms giving 2000 with swap!, and refs via STM guarantee coordinated writes but retry under contention is costly. It builds a thundering‑herd fix using refs+promises that drops DB hits from hundreds to single digits then to one by having waiting threads dref/promise, and explores core.async channels, go/chan/alts/timeouts/merge/pubsub for pipelining and backpressure.

AI-written summary · about

  1. 0:00Start
  2. 1:31Concurrency Workshop
  3. 5:58Parallelism versus Concurrency
  4. 20:45Define an Atom
  5. 32:21Build a Solution to Thundering Herd Problem
  6. 1:04:27Second Assignment
  7. 1:16:57Circuit Breaker Pattern
  8. 1:20:29Communicating Sequential Processes
  9. 1:22:03Concurrency Pattern
  10. 1:22:44Walkthrough
  11. 1:25:39Port Signature
  12. 1:36:28Can You Make an Infinitely Buffered Channel
  13. 1:38:42Timeout Channel
  14. 1:52:56What Is the Difference between Using Future and Using Async
  15. 2:04:47Parking Operations
  16. 2:09:33Thread Api
  17. 2:09:55Buffer Channels
  18. 2:10:35Sliding Buffer
  19. 2:12:00Dropping Buffer
  20. 2:14:23Transparent Buffer
  21. 2:17:08Recap
  22. 2:22:08The Risk of Data Loss
  23. 2:26:21Merge
  24. 2:36:33Subscriber Channels
  25. 2:44:11Add Mix Api
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.