Форум программистов, компьютерный форум, киберфорум
C++: WinAPI
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
32 / 30 / 4
Регистрация: 01.02.2014
Сообщений: 869
1

Как выгоднее посчитать разницу в секундах между действиями?

19.04.2018, 15:20. Просмотров 879. Ответов 2
Метки нет (Все метки)

Задача стоит такая, делаю запросы на сайт, мне нужно считать сколько времени в секундах прошло между запросами, для учета времени keep-alive.

На данный момент использую функцию QDateTime::setSecsSinceEpoch которая возвращает секунды начиная с 1970-01-01T00:00:00.000, но если запросы идут часто, например каждую секунду, то считать разницу между long long int очень затратная и бесполезная процедура.

Присмотрелся к функции DWORD GetTickCount(void);, но мне непонятно что значат слова
Она ограничивается разрешающей способностью системного таймера
Что можете посоветовать в данной ситуации?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.04.2018, 15:20
Ответы с готовыми решениями:

Как посчитать разницу в датах: в часах минутах секундах
Доброго времени суток! Подскажите, гуглеж толком не дал результатов , есть две даты $date1 =...

Как измерить разницу в секундах между двумя значениями времени?
привет. Мне нужно замерить время работы программы, используются объекты класса...

Как проще всего вычислить разницу между TDateTime (в секундах)?
Господа, гении программирования! Как проще всего вычислить разницу между T1 и T2 : TDateTime (в...

Узнать разницу в секундах между датами
привет всем. допустим в моей программе срабатывает звуковой сигнал в 12:30:00 текущее время -...

2
181 / 179 / 66
Регистрация: 15.02.2015
Сообщений: 515
20.04.2018, 12:07 2
Лучший ответ Сообщение было отмечено mh-coder как решение

Решение

C++
1
2
3
4
5
6
7
8
#include <iostream>
#include <chrono>
 
auto point_start = std::chrono::high_resolution_clock::now();
// some long operation
auto point_end = std::chrono::high_resolution_clock::now();
auto dif_ms = std::chrono::duration_cast<std::chrono::milliseconds>(point_end - point_start);
std::cout << dif_ms.count() << " milliseconds\n";
0
Модератор
Эксперт CЭксперт С++
3614 / 3273 / 572
Регистрация: 07.10.2015
Сообщений: 6,697
20.04.2018, 13:32 3
Цитата Сообщение от mh-coder Посмотреть сообщение
Она ограничивается разрешающей способностью системного таймера
Системный таймер вызывается 18.2 раза в секунду. Вот и получается, что измерять им интервалы времени меньшие 55мс никак не получится.
Для измерения меньших интервалов, или для большей точности, надо использовать либо multimedia timer, либо (как предложили выше) high-resolution timer.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.04.2018, 13:32

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как разобраться в excel : нужно пересчитать разницу между днями в часах, минутах,секундах.!ПОЖАЛУЙСТА, буду очень благодарна )
Документ прилагается!) Весь день я билась,билась,...так и не добилась!( Гуманитарий...(

Вывести разницу между промежутками в минутах и секундах
2 Составить программу, в которой вводятся значения двух временных промежутков в часах. Вывести...

Установить разницу между временными промежутками в минутах и секундах
Задача:Составить программу, в которой вводятся значения двух временных промежутков в часах. Разницу...

Как посчитать разницу между числами
Всем привет, как посчитать разницу между числами это всё делается в отчёте (excel). Имеются 3...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.