tickcount

Материал из Pro-Pawn Wiki
Перейти к: навигация, поиск

Описание:

Узнаёт время, прошедшее с момента запуска системы.

Параметры:

(&granularity=0)
&granularity После вызова функции содержит количество системных тиков за 1 секунду (необязательный параметр).


Возвращаемое значение:

Количество миллисекунд с момента запуска системы.

Info rhombus.png
Примечание
Данная функция может использоваться в SA-MP в качестве замены для GetTickCount().
Точность результата функции зависит от количества системных тиков в секунду. Например, если после вызова в переменной granularity записано значение 20, это значит что время с момента запуска системы обновляется 20 раз в секунду, т.е. через каждые 1000 / 20 = 50 миллисекунд.
Из-за ограничений 32-битного размера ячейки результат функции становится отрицательным через (231 / 1000 / 60 / 60 / 24) = (2147473647 / 86400000) ≈ 24.86 дня и начнёт повторяться через ≈ 49.71 дней. По этой причине использование данной функции может быть небезопасно для измерения временных промежутков, для которых не гарантирована краткосрочность. Например, если между вызовами tickcount() прошло 50 дней, при вычитании нового результата из старого будет получена разница менее 1 дня - для таких случаев более безопасным выбором будет функция gettime(), возвращающая время в секундах.


Пример использования:

main()
{
    printf("С момента запуска системы прошло %d мс", tickcount());
}


См. также: