GnuSmalltalkUsersGuide:BaseChapter 060
- Delay
Delay
네임스페이스 Smalltalk에 정의됨
슈퍼클래스: Object
범주: 커널-프로세스
- 나는 좌절감을 야기한다. 나는 어떤 것들을 기다리게 만든다 (때로는 적절한 수준보다 훨씬 오래 기다리게 만드는데 이는 운영체제의 결함 때문이다). 프로세스가 나의 인스턴스들 중 하나에게 wait 메시지를 전송하면 해당 프로세스는 인스턴스가 생성되었을 당시 명시된 시간 동안 sleep 상태가 된다.
Delay 클래스: 인스턴스 생성
forMilliseconds: millisecondCount
millisecondCount 밀리초 동안 기다리는 Delay를 응답하라.
forSeconds: secondCount
secondCount 초 동안 기다리는 Delay를 응답하라.
untilMilliseconds: millisecondCount
시작 이후 millisecondCount 밀리초 동안 기다리는 Delay를 응답하라.
Delay 클래스: 타이머 프로세스
handleDelayEvent
타이머 이벤트 처리; -스케줄이나 계획되지 않은 요청(DelayEvent notNil)-혹은-타이머 신호(명시적으로 나타내지 않음)-가 될 수 있다. 신호를 받을 때마다 타이머 만료를 검사한다.
runDelayProcess
타이머 이벤트 루프를 실행하라.
scheduleDelay: aDelay on: aSemaphore
Private - 해당 Delay를 계획하라. Queue를 유일하게 조작하는 타이머 프로세스에서 실행하라.
startDelayLoop
타이머 이벤트 루프를 시작하라.
unscheduleDelay: aDelay
Private. 해당 Delay를 스케줄에서 제거(unscheduled)하라. Queue를 유일하게 조작하는 타이머 프로세스에서 실행하라.
Delay: 접근하기
delayDuration
남은 대기 시간을 밀리초로 응답하라.
resumptionTime
'resumptionTime'를 응답하라.
Delay: 비교하기
= aDelay
수신자와 aDelay가 같은 지연을 나타내는지 여부를 응답하라.
hash
수신자에 대한 해시값을 응답하라.
Delay: 지연하기
wait
해당 Delay를 계획(schedule)하고 기다려라. 현재 프로세스는 해당 Delay가 생성될 당시 명시된 시간만큼 일시 중지될 것이다.
Delay: 초기화
initForMilliseconds: value
millisecondCount 밀리초 동안 기다리는 Delay를 초기화하라.
Delay: 인스턴스 생성
initUntilMilliseconds: value
시작 후 millisecondCount 밀리초 동안 기다리는 Delay를 초기화하라.