繁体   English   中英

在Smalltalk吱吱声中入睡

[英]Sleep in Smalltalk Squeak

我正在处理N * N个皇后问题及其gui。 我想每个动作睡几秒钟,以便观看者可以看到该过程。 如何使闲聊入睡?

谢谢

不用睡觉,您可以等待。

5 seconds asDelay wait.

例如,如果您选择并打印以下内容,它将等待5秒钟再打印结果(2)

[
    5 seconds asDelay wait.
    1 + 1
] value

Delay类的注释说明了它的作用。

我是一个过程可能会暂停一段时间的主要方式。 最简单的用法是这样的:

(延迟时间:5)等待。

延迟实例通过将调用者的过程暂停一定时间来响应消息“等待”。 在创建延迟时,使用消息forMilliseconds:或forSeconds:指定暂停的持续时间。 当前等待完成后,可以再次使用“延迟”。 例如,一个时钟进程可能会重复等待一秒钟的延迟。

重新启动快照后,将恢复保存图像快照的过程中的延迟。 延迟跨毫秒的时钟翻转工作。

有关更复杂的示例,请参见#testDelayOf:for:rect:。

更新:(基于评论)

wait将暂停执行流程,这意味着在前面的示例中,只有在等待时间段结束之后,才会执行1 + 1 (恢复执行流程)。

因此,您可以在课堂上...

MyBoard>>doStep
    self drawBoard.
    5 seconds asDelay wait.
    self solve.
    5 seconds asDelay wait.
    self destroyBoard.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM