Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 1
Регистрация: 05.06.2014
Сообщений: 175
1

Функция определения разницы во времени в секундах

10.09.2018, 12:29. Показов 2411. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В работе потока необходимо соблюсти интервал для срабатывания функции

работает поток - собирает информацию (нет точного времени)
при нахождении информации запуск функции - следующий запуск функции не ранее чем через 1минуту должен быть как высчитать разницу в секундах?
как зафиксировать первое срабатывание в секундах?
может есть функция которая определяет разницу между временем в секундах?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.09.2018, 12:29
Ответы с готовыми решениями:

функция разницы времени
собственно нужна функция которая будет отображать осколько прошло годов и месяцев с определенной...

Дан интервал времени в часах, минутах и секундах. Определить тот же интервал в секундах
Помогите с написанием кода Задача A. Часы Ограничение по времени: 1 сек Ограничение по...

Функция определения даты и времени.
Помагите не знаю где ошибка. Помогите найти! <script language="javascript"> NMonths= New...

функция определения времени выполнения
подскажите пожалуйста есть ли в С++ функция замера времени исполнения?? суть такова - нужна было...

10
пофигист широкого профиля
4733 / 3167 / 859
Регистрация: 15.07.2013
Сообщений: 18,252
10.09.2018, 12:37 2

SecondsBetween
1
0 / 0 / 1
Регистрация: 05.06.2014
Сообщений: 175
10.09.2018, 12:40  [ТС] 3
а как фиксировать для этой функции время правильно?
0
5786 / 4528 / 1431
Регистрация: 14.04.2014
Сообщений: 20,157
Записей в блоге: 20
10.09.2018, 15:50 4
а какие есть способы?

если вы уточните, что на самом деле вам требовалось, то может, будут и другие ответы
а пока что вам дали исчерпывающий ответ именно на ваш вопрос
0
0 / 0 / 1
Регистрация: 05.06.2014
Сообщений: 175
10.09.2018, 19:35  [ТС] 5
Delphi
1
2
3
4
5
6
7
8
 s:= SecondsBetween(Now, Yesterday);
 Res:= IntToStr(s);
 mmo3.Lines.Add(res);
 Sleep(3000);
 s1:= SecondsBetween(Now, Yesterday);
 Res:= IntToStr(s1);
 mmo3.Lines.Add(res);
 mmo3.Lines.Add(IntToStr(s1-s))// эта разница мне нужна
0
5786 / 4528 / 1431
Регистрация: 14.04.2014
Сообщений: 20,157
Записей в блоге: 20
10.09.2018, 22:43 6
ухты, как забористо нынче


Delphi
1
2
3
4
t1:=now;
...
t2:=now;
showMessage(IntToStr(SecondsBetween(t1,t2)));
но вообще обычно для профилирования в программе пользуются более точным методом GetTickCount
точность ~18мсек
0
пофигист широкого профиля
4733 / 3167 / 859
Регистрация: 15.07.2013
Сообщений: 18,252
11.09.2018, 02:27 7
Цитата Сообщение от krapotkin Посмотреть сообщение
но вообще обычно для профилирования в программе пользуются более точным методом GetTickCount
Вообще-то говоря Now и Time имеют ту же самую точность что и GetTickCount. А для профилирования лучше использовать
QueryPerformanceCounter.
0
5786 / 4528 / 1431
Регистрация: 14.04.2014
Сообщений: 20,157
Записей в блоге: 20
11.09.2018, 06:03 8
насчет точности строго говоря, не одно и то же
интервалы конечно лучше хранить не в вещественном виде
а для профилирования нужно как и везде выбирать инструменты к месту
использование GetTickCount вполне себя оправдывает простотой, и нормально заходит для вылазок в базу, интернет, диск, прокручивания сотен строк расчетов и т.д., т.е. относительно медленных операций.
QueryPerformanceCounter обычно выбирается в игростроении, где каждое мгновение на счету

если речь идет реально о минутах - секундах, то и SecondsBetween норм.
0
0 / 0 / 1
Регистрация: 05.06.2014
Сообщений: 175
12.09.2018, 23:54  [ТС] 9
t1:= now; - это как понимать?
получение времени в секундах для дальнейшего вычисления разницы как проще всего сделать?
0
пофигист широкого профиля
4733 / 3167 / 859
Регистрация: 15.07.2013
Сообщений: 18,252
13.09.2018, 02:44 10
Цитата Сообщение от krapotkin Посмотреть сообщение
насчет точности строго говоря, не одно и то же
интервалы конечно лучше хранить не в вещественном виде
Насчет точности - одно и то же. Все эти три функции работают совершенно одинаково. Точнее одинаково зависят от системного таймера.
Цитата Сообщение от krapotkin Посмотреть сообщение
QueryPerformanceCounter обычно выбирается в игростроении, где каждое мгновение на счету
Далеко не только. А в "профилировании" так обычно она и используется. Ибо не зависит ни от системного таймера унаследованного с времён IBM PC, ни от операционной системы.

Добавлено через 11 минут
Цитата Сообщение от lotes Посмотреть сообщение
t1:= now; - это как понимать?
получение времени в секундах для дальнейшего вычисления разницы как проще всего сделать?
А зачем вам получать время именно в секундах для дальнейшего вычисления?
0
1437 / 1014 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
13.09.2018, 09:44 11

Не по теме:

Цитата Сообщение от lotes Посмотреть сообщение
t1:= now; - это как понимать?
получение времени в секундах для дальнейшего вычисления разницы как проще всего сделать?
Тот самый момент, когда товарищи здесь распинаются, выясняют,какой метод оптимальнее, а ТС спрашивает что такое Now...



Добавлено через 5 минут
Цитата Сообщение от lotes Посмотреть сообщение
получение времени в секундах для дальнейшего вычисления разницы как проще всего сделать?
Вам был дан ответ в #2. А в #6 расписано применение метода SecondsBetween. На месте троеточия - Ваш код.
Чего ещё нужно?
Нахрена Зачем Вам вчерашний день, если всё равно вычисляете разницу? Ответите на этот сложный арифметический вопрос?

Добавлено через 4 минуты
Как вариант могу предложить ещё такой способ:
Delphi
1
2
3
4
t1 := GetTickCount;
// Ваш код ...
t2 := GetTickCount;
ShowMessage(IntToStr(t2 - t1));
Правда, это не совсем секунды будут, но если так надо пренепременно в секундах, то:
Delphi
1
2
3
4
t1 := GetTickCount;
// Ваш код ...
t2 := GetTickCount;
ShowMessage(IntToStr(1000 * (t2 - t1)));
0
13.09.2018, 09:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.09.2018, 09:44
Помогаю со студенческими работами здесь

Функция определения времени работы процессора
Ниже представлена функция для определения времени работы процессора. Как ее расшифровать...

Функция для определения текущей даты и времени
Столкнулся с проблемой, есть ли функция по определении текущей даты и времени, для дальнейшего...

Функция определения более оптимального маршрута по времени
Надо написать для структуры функцию определения более оптимального маршрута по времени. Написал, но...

Определить в часах, минутах, секундах длину интервала времени, заданного отметками в часах, минутах и секундах
Друзья, добрый день. Нужно составить программу: С клавиатуры вводится время начала эксперимента...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru