2010-07-25 2 views
1

Я думаю, что есть minimum time span, которую мы можем назначить interval, чтобы запланировать задачу в iPhone SDK. Но я еще не нашел minimum interval/time span.минимальный эффективный интервал между расписанием (iphone объектив c)

Не могли бы вы сообщить мне, пожалуйста! Это будет очень полезно для меня.

РЕДАКТИРОВАТЬ

Любая ссылка деталь более благодарными. Заранее благодарен

ответ

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

Я бы не сказал 0 интервал бесполезен. Это действительно полезно, если вы хотите, чтобы что-то запускалось сразу после того, как ваш поток попал в спящий режим ... например, я использую его в моем методе ApplicationDidFinishLaunching, потому что мне нужно, чтобы остальная часть инициализации приложения завершилась (например, для обработки запроса URL) , но все же хотите запустить метод в тот момент, когда поток будет готов. Да, вы можете указать любое допустимое значение с плавающей запятой двойной точности> = 0. – Steve

+0

Почему бы не использовать один из вариантов 'performSelector' в этом случае? –

3

NSTimeInterval просто «двойной», так можно указать любое двойное значение. Наименьшее значение рядом с 0 составляет около 2.225e-308.

Однако помните, что NSTimer не является высокоточным инструментом. Вы можете указать очень маленькие интервалы, но они не соблюдаются ОС. Вот что говорит documentation for NSTimer:

эффективное разрешение временного интервала для таймера ограничено порядка 50-100 миллисекунд

 Смежные вопросы

  • Нет связанных вопросов^_^