我如何在Smalltalk Pharo中睡几秒钟,并能够打断这个?

Eri*_*ack 5 smalltalk pharo

我正在调试一些键盘事件代码,我想循环睡眠(让我有机会创建键盘事件),但是当我这样做时,Pharo不会让我退出Command-.所以调试很困难.我不得不等待500秒来修复下面的代码...

100 timesRepeat: [ 
    Transcript show: 'Type an a... '.
    (Delay forSeconds: 5) wait.
    (Sensor keyPressed: $a) ifTrue: [ Transcript show: 'you pressed a' ].
]
Run Code Online (Sandbox Code Playgroud)

那我该如何制作Command-.工作,还是有更合适的东西(Delay forSeconds: 5) wait.

Ber*_*erg 1

在 Mac OS X 上的 Squeak 中运行良好(使用peekKeyboardEvent,它没有keyPressed:)。所以这不是你的代码的错,中断它应该可以正常工作。