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

xof*_*ofz 11 smalltalk pharo

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

我在线查看,我可以点击alt- .进入某种过程查看器?我怎么能从那里杀死无限循环?

Mar*_*inW 12

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

如果您在没有保存的情况下从外部杀死Pharo,您可以随时使用

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

  • 究竟.在实践中,我发现它没有保存*Pharo by Example*中承诺的所有更改,但它肯定会保存添加或更改的方法. (2认同)

Uko*_*Uko 9

你确实可以使用<action key>-.(cmd为mac的地方,可能是ctrl for win和alt for linux(但是有些时候它在linux上是ctrl而且在windows上也是alt.例如Pharo 6.1在win 10上使用alt).

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