2010-07-25 3 views
1

minimum time span으로 지정할 수 있으며 interval으로 지정하면 iPhone SDK에서 작업을 예약 할 수 있습니다. 하지만 아직 발견하지 못했습니다 minimum interval/time span.최소 유효 일정 간격 (iphone objective c)

알려 주시기 바랍니다. 그것은 나에게 매우 도움이 될 것입니다.

EDIT

상관 상세히 참조 더 감사합니다. 미리 감사드립니다.

답변

2

0.0 나는 믿습니다. 나는 현재 스레드가 대기 상태가 된 직후 시스템이 뭔가를 실행하게하는 "트릭"으로 사용되는 것을 보았습니다.

http://developer.apple.com/mac/library/documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/Reference/Reference.html#//apple_ref/occ/instm/NSObject/performSelector:withObject:afterDelay :..

"메시지가 전송되는 전에 최소 시간은 0의 지연을 지정하면 반드시 즉시 수행 할 수있는 셀렉터가 발생하지 않습니다 셀렉터는 여전히 스레드의 실행 루프에서 대기 및 수행 최대한 빨리."

함축 된 의미는 0

+0

솔직히 speaking-'0' 간격이 난 이후, 쓸모 스케줄러 없이도 할 수 있습니다. 그것은 제가 0.000000000001과 같은 것을 지정할 수 있다는 것을 의미합니까, 그것은 '0'보다 큽니다? – Sadat

+0

나는 간격이 쓸모 없다고 말하지 않을 것이다. 스레드가 잠자기 상태로 들어간 직후에 뭔가를 실행하려면 실제로 유용합니다 ... 예를 들어, 응용 프로그램 초기화의 나머지 부분을 완료해야하기 때문에 ApplicationDidFinishLaunching 메서드에서 사용합니다 (예 : URL 요청 처리). , 여전히 스레드가 준비되는 즉시 메서드를 실행하려고합니다. 예, 유효한 배정 밀도 부동 소수점 값> = 0을 지정할 수 있습니다. – Steve

+0

이 경우에 performSelector 변형 중 하나를 사용하지 않는 이유는 무엇입니까? –

3

NSTimeInterval은 "더블"그냥 지정할 수 있습니다, 그래서 어떤 double 값을 지정할 수 있습니다. 0 옆의 가장 작은 값은 약 2.225e-308입니다.

그러나 NSTimer는 고정밀 도구가 아닙니다. 아주 작은 간격을 지정할 수는 있지만 운영 체제에서는이를 준수하지 않습니다. 여기에 documentation for NSTimer의 말씀입니다 :

타이머의 시간 간격의 유효 해상도는 50 ~ 100 밀리 초

의 순서로 제한됩니다