14.3.1. Время в микросекундах: gettimeofday()
14.3.1. Время в микросекундах: gettimeofday()
Первой задачей является получение времени дня:
#include <sys/time.h>
int gettimeofday(struct timeval *tv, void *tz); /* определение POSIX, а не GLIBC */
gettimeofday() позволяет получить время дня.[156] В случае успеха возвращается 0, при ошибке -1. Аргументы следующие:
struct timeval *tv
Этот аргумент является указателем на struct timeval, которая вскоре будет описана и в которую система помещает текущее время.
void *tz
Это аргумент больше не используется; он имеет тип void*, поэтому он всегда должен равняться NULL. (Справочная страница описывает, для чего он использовался, а затем утверждает, что он устарел. Прочтите, если интересуетесь подробностями.)
Время представлено структурой struct timeval:
struct timeval {
long tv_sec; /* секунды */
long tv_usec; /* микросекунды */
};
Значение tv_sec представляет секунды с начала Эпохи; tv_usec является числом микросекунд в секунде.
Справочная страница GNU/Linux gettimeofday(2) документирует также следующие макросы:
#define timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec)
#define timercmp(tvp, uvp, cmp)
((tvp)->tv_sec cmp (uvp)->tv_sec ||
(tvp)->tv_sec == (uvp)->tv_sec &&
(tvp)->tv_usec cmp (uvp)->tv_usec)
#define timerclear(tvp) ((tvp)->tv_sec = (tvp)->tv_usec = 0)
Эти макросы работают со значениями struct timeval*; то есть указателями на структуры, и их использование должно быть очевидным из их названий и кода. Особенно интересен макрос timercmp(): третьим аргументом является оператор сравнения для указания вида сравнения. Например, рассмотрим определение того, является ли одна struct timeval меньше другой:
struct timeval t1, t2;
...
if (timercmp(&t1, & t2, <))
/* t1 меньше, чем t2 */
Макрос развертывается в
((&t1)->tv_sec < (&t2)->tv_sec ||
(&t1)->tv_sec == (&t2)->tv_sec &&
(&t1)->tv_usec < (&t2)->tv_usec)
Это значит: «если t1.tv_sec меньше, чем t2.tv_sec, ИЛИ если они равны и t1.tv_usec меньше, чем t2.tv_usec, тогда…».
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
14.3.2. Файловое время в микросекундах: utimes()
14.3.2. Файловое время в микросекундах: utimes() В разделе 5.5.3 «Изменение временных отметок: utime()» был описан системный вызов utime() для установки времени последнего обращения и изменения данного файла. Некоторые файловые системы хранят эти временные отметки с разрешением в
Дата и время
Дата и время Стандартный системный компонент, позволяющий управлять встроенными часами Windows, которые вы можете наблюдать на панели уведомлений. Кроме того, можно настроить отображение дополнительных часов, которые могут показывать время другого часового пояса. Здесь
Cистемное время
Cистемное время Windows XP умеет подстраивать системное время, сверяясь со специальными серверами в интернете. Можно изменить адреса используемых серверов.Без использования реестра: Щелкните правой кнопкой мыши на значке часов в системной области панели задач, выберите
Дата и время
Дата и время Если жесткий диск был отформатирован, то следует установить текущее число и время. Есть два способа открыть окно Свойства: Дата и время (рис. 3.2):• в окне Панель управления дважды щелкнуть на значке Дата и время;• на Панели задач дважды щелкнуть на
8.7, Функция gettimeofday(): системные часы
8.7, Функция gettimeofday(): системные часы Функция gettimeofday() определяет текущее системное время. В качестве аргумента она принимает структуру типа timeval, в которую записывается значение времени (в секундах), прошедшее с начала эпохи UNIX (1-е января 1970 г., полночь по Гринвичу). Это
Время
Время CompareFileTime Функция CompareFileTime сравнивает два 64-битных файловых времени. LONG CompareFileTime ( CONST FILETIME * lpFileTime1 , // pointer to first file time CONST FILETIME * lpFileTime2 // pointer to second file time ); Параметры lpFileTime 1 - указывает на структуру типа FILETIME , которая определяет первое 64-битное файловое время. lpFileTime 2 -
Сокращайте время
Сокращайте время РазделяйтеСокращайте время разработки, разбивая месяцы на недели. Если проект требует 12 недель работы, разбейте его на 12 небольших кусков;. Если проект требует 30 часов работы, разбейте на куски по 6-10 часов и делайте каждый шаг за один раз, за один день.Вы
Единое время
Единое время Людям нужно время, чтобы постоянно добиваться своегоСотрудники 37signals находятся в четырех городах и в восьми часовых поясах. От Прово, штат Юта до Копенгагена, Дания. Есть только 4-5 часов в течение дня, когда мы работаем вместе. Когда наша команда спит, Давид,
Системное время
Системное время Чтобы получить или установить системное время на устройстве, нужно использовать функции GetSystemTime и SetSystemTime. Следует учитывать, что функция GetSystemTime возвращает время по Гринвичу, а не местное время. Код, иллюстрирующий применение этих функций, приведен в
2.1.3 Время Жизни
2.1.3 Время Жизни Если программист не указал иного, то объект создается, когда встречается его описание, и уничтожается, когда его имя выходит из области видимости, Объекты с глобальными именами создаются и инициализируются один раз (только) и «живут» до завершения
Дата и время
Дата и время Чтобы открыть окно редактирования даты и времени, нужно дважды щелкнуть кнопкой мыши на значке Дата и время окна Панель управления. В результате на экране появится окно Свойства: Дата и время, в котором на вкладке Часовой пояс отображается соответствующий
16.4. Опережая время
16.4. Опережая время В данном примере мы рассмотрим чрезвычайно простой способ сделать осеннюю фотографию из летней. В качестве исходной подойдет практически любая фотография, на которой сняты деревья (рис. 16.20). Чем отличаются деревья летом и осенью? Правильно – цветом
Настоящее время
Настоящее время За последние 5–7 лет в «ноутбукостроении» никаких революционных событий не произошло. Конечно, ноутбуки стали более мощными, легкими, надежными, стильными и в этом плане будут развиваться и дальше.Скорее всего, очередной прорыв произойдет тогда, когда в
2.4.2. Время установки Windows 7 и время жизни аккумулятора
2.4.2. Время установки Windows 7 и время жизни аккумулятора Если вы устанавливаете Windows 7 на ноутбук или нетбук, желательно подключить его к сети питания. Если это невозможно, тогда лучше не начинать установку Windows. Хотя весь процесс установки занимает около 20–25 минут (во всяком
ВРЕМЯ «Ч»
ВРЕМЯ «Ч» Как известно, очень многое в схеме построения безопасности в офисе направлено на решение проблем в случае наступления так называемого времени «Ч» — то есть Чужой в офисе. Да на самом деле всё равно, кто это будет: налётчики, подосланные конкурентами, марсиане,
Опережая время
Опережая время Казалось, можно было успокоиться, отдохнуть от напряженнейшего труда или, во всяком случае, сделать передышку.Этого не получилось и, наверно, просто не могло получиться. Еще в 1966 году Карцев выдвинул идею создания многомашинного вычислительного комплекса,