The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Каталог документации / Раздел "Программирование, языки" / Оглавление документа

Timers

Timers — отслеживание истёкшего времени.

Краткое описание


#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

typedef struct _GTimer GTimer;

Непрозрачный тип данных который записывает начальное время.


g_timer_new ()

GTimer*     g_timer_new                     (void);

Создаёт новый таймер и начинает отсчёт (то есть g_timer_start() не явно вызывается для вас).

Возвращает : новая структура GTimer.

g_timer_start ()

void        g_timer_start                   (GTimer *timer);

Отмечает начальное время, так, чтобы следующие вызовы g_timer_elapsed() сообщали время прошедшее с момента вызова g_timer_start(). g_timer_new() автоматически отмечает начальное время, поэтому нет необходимости вызывать g_timer_start() сразу после создания таймера.

timer : GTimer.

g_timer_stop ()

void        g_timer_stop                    (GTimer *timer);

Отмечает конечное время, поэтому вызовы g_timer_elapsed() будут возвращать разницу между конечным и начальным временем.

timer : GTimer.

g_timer_continue ()

void        g_timer_continue                (GTimer *timer);

Возобнавляет работу таймера который был предварительно остановлен с помощью g_timer_stop(). g_timer_stop() должна быть вызвана перед использованием этой функции.

timer : GTimer.

Начиная с версии 2.4


g_timer_elapsed ()

gdouble     g_timer_elapsed                 (GTimer *timer,
                                             gulong *microseconds);

Если timer был запущен но не остановлен, получает время так как таймер был запущен. Если timer был остановлен, получает прошедшее время между между временем начала и временем остановки. Возвращаемое значение является количеством прошедших секунд, включая любую дробную часть. Параметр microseconds бесполезен.

timer : GTimer.
microseconds : расположение для возвращаемой дробной части прошедших секунд, в микросекундах (то есть общее количество прошедших микросекунд, по модулю 1000000), или NULL
Возвращает : прошедшие секунды в виде значения с плавающей точкой, включая любую дробную часть.

g_timer_reset ()

void        g_timer_reset                   (GTimer *timer);

Эта функция бесполезна; достаточно вызвать g_timer_start() для уже запущенного таймера для сброса начального времени, поэтому g_timer_reset() нет смысла использовать.

timer : GTimer.

g_timer_destroy ()

void        g_timer_destroy                 (GTimer *timer);

Уничтожает таймер, освобождает связанные с ним ресурсы.

timer : GTimer для уничтожения.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру