【发布时间】:2018-02-19 05:08:31
【问题描述】:
我找不到如何使用 Elixir 刷新单行输出。
在 Ruby 中我们可以这样做:
n = 0
loop do
print n
$stdout.flush
n += 1
end
但是我应该用什么来对 Elixir 做同样的事情呢?
【问题讨论】:
我找不到如何使用 Elixir 刷新单行输出。
在 Ruby 中我们可以这样做:
n = 0
loop do
print n
$stdout.flush
n += 1
end
但是我应该用什么来对 Elixir 做同样的事情呢?
【问题讨论】:
使用IO.write/1。据我所知,无需手动刷新标准输出。以下代码在一行中写入 1 到 10,每个数字之间有 1 秒的延迟。每次写入后都会自动刷新标准输出。
for i <- 1..10 do
IO.write i
:timer.sleep(1000)
end
输出:
12345678910
(每个数字之间有 1 秒的延迟。)
【讨论】: