2024 Clojure 状态调查! 中分享您的想法。

欢迎!请参阅 关于 页面以获取更多关于此工作方式的信息。

+1
文档

core.async 的文档中,识别符 port 被用作一些函数/表单的输入。port 是否和 chan 相同?或者它是 chan 实现的一种接口或协议?

1 答案

+1

已选中
 
最佳答案

端是 chan 的读取或写入端。所以你可以认为大多数通道实例在两端都有读取和写入端口。在某些情况下,API 可能实际上只给出读取或写入端口实现,而不是完整的 chan。

读取和写入端协议在以下位置定义
https://github.com/clojure/core.async/blob/master/src/main/clojure/clojure/core/async/impl/protocols.clj#L15.

by
因此,任何以“通道”为参数,并且只使用通道进行读取或只进行写的函数,最合理地称它为“端口”吗?
by
是的,这是正确的。
...