在Clojure core.async中,通道(channels)和端口(ports)是同一件事吗?如果不是,它们有什么区别?在观看视频Timothy Baldridge - Core.Async时,他创建了一个通道。
(def c (chan))
之后
(<!! c)
c
是通道,但是 <!!
的文档(强调添加)说明:
用法:(<!! port) 从 port 中取出一个值。如果已关闭,则返回 nil。 如果没有可用的值,则会阻塞。
从core.async 文档上看并不清楚。