【发布时间】:2018-11-02 01:55:10
【问题描述】:
我正在关注 Nim in Action 一书。
在第 3 章中,有一个这样的例子:
import asyncdispatch, asyncfile
proc readFiles() {.async.} =
var file = openAsync("/tmp/hello.py", fmReadWrite)
let data = await file.readAll()
echo(data)
await file.write("Hello!\n")
file.close()
waitFor readFiles()
我对该示例所做的唯一更改是将文件名替换为我系统上存在的文件名。
该代码应该输出打开文件的内容并写入“Hello!\n”。
但是当我运行它时,readAll 总是返回一个空字符串,我通过添加 assert len(data) > 0 进行了验证。
我可以改变什么来成功进行异步读取?
编辑:
我的nim编译器的版本是:
$ nim --version
Nim Compiler Version 0.19.0 [MacOSX: amd64]
Compiled at 2018-09-28
Copyright (c) 2006-2018 by Andreas Rumpf
active boot switches: -d:release -d:useLinenoise
【问题讨论】:
标签: nim-lang