2016-04-06 24 views
1

有没有实现这样的事情测量时间

while time left 
    do something 

,时间是一些变量设置为在拍X秒/分钟/小时的方式?

我可以使用一些常数,以模拟时间为

(define (loop time) 
    (if (< time some-constant) 
     ((do something) 
     (loop (- time 1))) 
     do-nothing)) 

但我不得不尝试着去看看恒会给我一小时等

+1

查看https://docs.racket-lang.org/reference/time.html –

回答

3

尝试以下操作:

(define (loop term-time) 
    (when (<= (current-seconds) term-time) 
     (begin <do something> 
       (loop term-time)))) 

然后你就可以用

(loop (+ (current-seconds) (* 60 60))) -- do it for one hour 
调用此

如果您只是想定期<do something>,但不想在100%CPU使用率下执行此操作,请在<do something>中包含(sleep <secs>)以实现此目的。