我可以停止 Scala REPL 中无限循环的执行吗?
我可以停止 Scala REPL 中无限循环的执行吗? 输入此内容并尝试在不退出 REPL 的情况下停止它。
while(true){}
我认为 Ctrl-C 之类的东西会起作用。
Can I stop the execution of an infinite loop in Scala REPL?
Type this and try to stop it without quitting the REPL.
while(true){}
I thought something like Ctrl-C would work.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这取决于你的 scala 版本。如果你已经使用 scala 2.9,只需使用 CTRL-C 即可。命令可能需要一些时间才能到达 REPL,但它有时会中止无限循环。
如果您使用的是旧版本的 scala(2.9 之前)。没有办法停止执行。在这些版本上 CTRL-C 将导致整个 scala REPL 终止。
该更改是在 Scala 2.9.0.RC2 中引入的。有关更多详细信息,请参阅变更日志(部分:Repl 改进)。
这在 Windows 上不起作用,因为 scala Windows 发行版的 Scala REPL 键绑定使用“切换改写模式”覆盖 CTRL-C。 键入
在 Windows 系统上 以查看此绑定的完整注释。我猜这是 Windows 上的一个错误。
It depends on your scala version. If you are already on scala 2.9 it will work by just using CTRL-C. It might take some time untile the command reaches the REPL but it will abort your infinite loop at some time.
If you are on an older version of scala (before 2.9). There is no way to stop execution. On those versions CTRL-C will lead to termination of the whole scala REPL.
The change was introduced with Scala 2.9.0.RC2. See the changelog (part: Repl Improvements) for further details.
This doesn't work on windows, since the Scala REPL keybindings of the scala windows distribution override CTRL-C with "toggle overtype mode". Type
on a windows system to view the whole comment for this binding. I guess this is a bug on windows.