A library binding a blocking native call (accept/recv/connect/...) needs it emitted __collect_safe so the thread deactivates for the call and doesn't pin the stop-the-world collector. foreign-fn / defcfn take an optional trailing :blocking; the backend emits (foreign-procedure __collect_safe ...). Needed for the ring-janet-adapter socket-server port. ffi-binding-test asserts a thread parked in a :blocking call doesn't block (collect). |
||
|---|---|---|
| .. | ||
| clojure/core | ||
| jolt | ||