2016-04-06 91 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>)以實現此目的。