lua - 在没有 ctrl -c 退出的情况下中断 lua 解释

标签 lua interpreter break interruption

我正在运行 Lua 编程这本书中的代码... http://www.lua.org/pil/3.6.html

当我在终端解释器中运行这段代码时......它会永远继续读取输入......

list = nil
    for line in io.lines() do
      list = {next=list, value=line}
end

Ctrl C 使我返回到提示/bash。还有其他命令可以打破吗?如何在不退出解释器的情况下中断/返回一段 lua 代码?

最佳答案

通过在类 Unix 系统中按 Ctrl-C,您正在向您的进程发送信号 SIGINT ,默认情况下将终止进程。

你的程序会永远从输入中读取,因为它阻塞在 io.lines() 的调用中。 ,它继续从标准输入读取。要中断它,请向您的终端发送 EOF ,这是通过在类 Unix 系统中按 Ctrl-D 来完成的。

在 Windows 上,发送 key EOF是 Ctrl-Z。

关于lua - 在没有 ctrl -c 退出的情况下中断 lua 解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18775233/

相关文章:

python - 我的 python 解释器自行以交互模式运行

python - 命令 'Python: Select Interpreter' 导致错误(未找到命令 'python.setInterpreter')

c++ - 在 C++ 中如何跳出嵌套循环?

python - 中断外部循环 Python 函数其他选项

linker - Luajit:将字节码编译成对象格式

linux - 如何在ubuntu上更新lua包?

c - 获取要调用的正确 Lua 元方法 (C-api)

javascript - global.eval 无法访问词法范围内的变量。该行为是否符合 ECMAScript 标准?

java - 当找到一个特定的单词并打破时

layout - 很棒的 WM : Rearrange windows without changing layout