如果我的Pharo图像进入无限循环,我该如何突破循环?

时间:2014-07-16 18:30:48

标签: smalltalk pharo

昨天当我意外地编写了一些代码并执行了导致无限循环的代码时,我大约花了2个小时来处理我的Pharo图像 - 实际上,我从另一个方法调用了一个方法,而这又调用了原始方法,来回永远。 pharo图像没有响应。我重新启动了图像,并在那两个小时内丢失了所有工作!

我在线观看了,我可以点击alt - .进入某种过程查看器吗?如何从那里杀死无限循环?

2 个答案:

答案 0 :(得分:12)

除了像@Uko解释的那样打断无限循环之外,你可能没有因为你担心的那两个小时丢失了所有的工作。

如果您在未保存的情况下从外部杀死了Pharo,则可以始终使用

    通过世界菜单&gt;工具&gt; <恢复丢失的更改... 或重新启动的图像中的
  • “恢复丢失的更改”工具
  • 在文本编辑器中打开与您的图像对应的.changes文件,查看您过去对系统的所有更改,并将其中的部分或全部复制并粘贴回正在运行的图像。

答案 1 :(得分:9)

你确实可以使用<action key>-.(其中cmd代表mac,可能是ctrl for win和alt for linux(但是有些时候它在Linux上是ctrl而且在windows上也是alt。例如Pharo 6.1使用alt在胜利10)。

<action key>-.导致用户中断并在正在执行的位置打开调试器。