Форум программистов, компьютерный форум CyberForum.ru

Привязка к системному таймеру - C++

Восстановить пароль Регистрация
 
breddybear
1 / 1 / 0
Регистрация: 15.09.2013
Сообщений: 38
25.10.2013, 23:18     Привязка к системному таймеру #1
Есть функция.Она вызывается постоянно,то есть частота ее вызова зависит от производительности процессора(могу ошибаться).Функция должна вызываться через определенный период времени.Мне подсказали привязать к системному таймеру.Как правильно,и вообще как это сделать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2013, 23:18     Привязка к системному таймеру
Посмотрите здесь:

Вызов функции по таймеру в с++ C++
удаление файлов по таймеру C++
посоветуйте хорошую литературу по STL и системному программированию на c++ C++
C++ Запуск функции по таймеру
Задачу по системному программированию о строках (вижуал студио) C++
Задача с массивами по системному программированию C++
Задача с файлами и функциями по системному программированию C++
Привязка к таймеру C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Убежденный
Системный программист
 Аватар для Убежденный
14219 / 6234 / 988
Регистрация: 02.05.2013
Сообщений: 10,391
Завершенные тесты: 1
25.10.2013, 23:26     Привязка к системному таймеру #2
Смотря о какой частоте вызовов функции идет речь.
Если порядка секунд, тогда можно просто снимать показания
локального/системного времени (GetLocalTime/GetSystemTime) и
выдерживать определенные интервалы времени между вызовами.
Хотя все равно это не стопроцентно надежно.

Если порядок исчисляется миллисекундами, то все плохо - Windows не
является системой реального времени и такое жесткое планирование в
ней невозможно by design.
Асурус
2 / 2 / 1
Регистрация: 27.07.2012
Сообщений: 40
26.10.2013, 00:26     Привязка к системному таймеру #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>
#include <time.h>
 
const int numb_of_seconds = 88; //кол-во итераций(одна за секунду)
 
int return_seconds(int); // любая функция, вызываемая через секунду
 
int main()
{
    int number = 0, counter = 0, first_sec = time(NULL);
    while(true)
    {
        if(number != time(NULL))
        {
            std::cout << return_seconds(first_sec) << std::endl;
            number = time(NULL);
            counter++;
        }
        if(counter == numb_of_seconds)
        {
            system("pause");
            return 0;
        }
    }
}
 
int return_seconds(int fsec)
{
    return (time(NULL) - fsec) % 60;
}
Может что-нибудь в этом роде, если угадал, ставь +1 спасибо )))
Yandex
Объявления
26.10.2013, 00:26     Привязка к системному таймеру
Ответ Создать тему
Опции темы

Текущее время: 05:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru