Elexir中的flush/0到底刷新了什么?

问题描述 投票:0回答:1

我仍然是 Elexir 的绝对新手:

我偶然发现了文档中的以下示例

Port
对象:

port = Port.open({:spawn, "cat"}, [:binary])
send(port, {self(), {:command, "hello"}})
send(port, {self(), {:command, "world"}})
flush() 

flash
如何知道它应该冲洗什么?如果有一个
port.flush()
,我会觉得更容易理解。

我尝试在 Elexir 文档中搜索 flush

 函数
的文档,但我只找到了 StringIO.flush

似乎也没有

Kernel.flush

;至少它没有在 
https://hexdocs.pm/elixir/1.14.5/Kernel.html 中列出。

如果有任何关于该函数定义位置的指针,我将不胜感激。此外,任何有关如何更好地搜索 Elexir 在线文档的建议,我们将不胜感激。

elixir port
1个回答
1
投票

flush/0 是 IEx 的一个实用函数,位于 IEx.Helpers

。您不需要从 
iex
 会话中指定模块名称,因为它将自动导入。它完全按照文档中的说明进行操作:

清除发送到 shell 收件箱的所有消息并将其打印出来。

说到查找文档,这个比较特殊,所以很难找到,不然以后应该是零问题。

© www.soinside.com 2019 - 2024. All rights reserved.