Справочное описание GLib | ||||
---|---|---|---|---|
#include <glib.h>
GTimer;
GTimer* g_timer_new (void);
void g_timer_start (GTimer *timer);
void g_timer_stop (GTimer *timer);
void g_timer_continue (GTimer *timer);
gdouble g_timer_elapsed (GTimer *timer,
gulong *microseconds);
void g_timer_reset (GTimer *timer);
void g_timer_destroy (GTimer *timer);
GTimer записывает начальное время и подсчитывает микросекунды прошедшие с этого времени. Это выполняется по разному на разных платформах и может быть сложно получить правильное соответсвие, поэтому GTimer обеспечивает переносимый/удобный интерфейс.
GTimer* g_timer_new (void);
Создаёт новый таймер и начинает отсчёт
(то есть g_timer_start()
не явно вызывается для вас).
Возвращает : | новая структура GTimer. |
void g_timer_start (GTimer *timer);
Отмечает начальное время, так, чтобы следующие вызовы g_timer_elapsed()
сообщали время прошедшее с момента вызова g_timer_start()
.
g_timer_new()
автоматически отмечает начальное время,
поэтому нет необходимости вызывать g_timer_start()
сразу после создания таймера.
timer : |
GTimer. |
void g_timer_stop (GTimer *timer);
Отмечает конечное время, поэтому вызовы g_timer_elapsed()
будут возвращать разницу между конечным и начальным временем.
timer : |
GTimer. |
void g_timer_continue (GTimer *timer);
Возобнавляет работу таймера который был предварительно остановлен с помощью
g_timer_stop()
.
g_timer_stop()
должна быть вызвана перед использованием этой функции.
timer : |
GTimer. |
Начиная с версии 2.4
gdouble g_timer_elapsed (GTimer *timer,
gulong *microseconds);
Если timer
был запущен но не остановлен, получает время так как таймер был запущен.
Если timer
был остановлен, получает прошедшее время между между временем начала и временем остановки.
Возвращаемое значение является количеством прошедших секунд, включая любую дробную часть.
Параметр microseconds
бесполезен.
void g_timer_reset (GTimer *timer);
Эта функция бесполезна; достаточно вызвать g_timer_start()
для уже
запущенного таймера для сброса начального времени,
поэтому g_timer_reset()
нет смысла использовать.
timer : |
GTimer. |