1
아래의 R3-GUI 코드를 보면 타이머에 남아있는 시간에 액세스 할 수있는 방법이 있습니까? 타이머 ID는 set-timer
에 의해 반환되지만 내가 할 수있는 것이 있는지 확실하지 않습니다.한 번 설정 한 타이머 값에 어떻게 액세스합니까?
>> get-timer/time-remaining timer-id
== 0:0:21
아래의 R3-GUI 코드를 보면 타이머에 남아있는 시간에 액세스 할 수있는 방법이 있습니까? 타이머 ID는 set-timer
에 의해 반환되지만 내가 할 수있는 것이 있는지 확실하지 않습니다.한 번 설정 한 타이머 값에 어떻게 액세스합니까?
>> get-timer/time-remaining timer-id
== 0:0:21
답을 찾을 수있는 경우 set-timer
>> source set-timer
set-timer: make function! [[
{Calls a function after a specified amount of time. Returns timer ID reference.}
code [block!]
timeout [number! time!]
/repeat "Periodically repeat the function."
/local t id
][
t: now/precise
if number? timeout [timeout: to time! timeout]
sort/skip/compare append guie/timers compose/deep/only [(id: guie/timer-id: guie/timer-id + 1) [
timeout (t + timeout)
rate (all [
repeat
max 0:00 timeout
])
callback (function [] code)
]] 2 2
guie/timeout: true
id
]
]
의 소스보고 : 나는 가짜 코드 예제에서 무엇을 찾고 즉,
set-timer [print "done"] 60
타이머가 아직 진행 중이라면 guie
개체에 있습니다.
>> guie/timers
== []
>> set-timer [print "done"] 2
== 5
>> guie/timers
== [5 [
timeout 11-Aug-2013/22:41:13.381-5:00
rate none
callback make function! [[
/local
][print "done"]]
]]
과 같이 표시됩니다 날짜 값을 받고 :
타이머가 완료second select guie/timers timer-id
>>b: second select guie/timers 5
==11-Aug-2013/22:41:13.381-5:00
>>c: now/time - b/time
== 0:0:55
경우, 할-이벤트는 그것을 삭제합니다. 이벤트가 실행되지 않으면 시간이 다 된 후에도 타이머가 유지됩니다.