请在 2024 年 Clojure 状态调查! 中分享您的意见。

欢迎!请参阅 关于 页面以了解有关该功能的一些更多信息。

+1 投票
文档

core.async 文档中,标识符 port 被用作某些函数/形式的输入。是否 portchan 相同?还是它是 chan 实现的接口或协议?

1 个答案

+1 投票

选中
 
最佳答案

端口是 chan 的读取或写入端。因此,您可以将大多数通道实例视为两端都拥有读取和写入端口。在有些情况下,API 可能实际上只提供读取或写入端口实现,而不是完整的 chan。

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

因此,任何接受 "通道" 作为参数且仅使用通道进行读取或写入的函数,最合适地可以称之为端口吗?
是的,这是正确的。
...