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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.81
VMV
8 / 8 / 0
Регистрация: 08.10.2011
Сообщений: 28
#1

Вызов функции по таймеру - C++

11.11.2011, 21:02. Просмотров 2416. Ответов 5
Метки нет (Все метки)

Здравствуйте. По нажатию на кнопку (на форме) вызывается функция, скажем, SomeFunction (); которая выполняет определенную задачу (суть не важно) и запускает таймер, время отсчета (в миллисекундах) которого вводится с клавиатуры еще до нажатия на кнопку. По истечению введенного времени SomeFunction или таймер должна вызвать вторую функцию, например, SomeFunction_2 ();
Так как имею дело с процессами и потоками, точность таймера должна быть высокой.
Подскажите, пожалуйста, как реализовать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.11.2011, 21:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вызов функции по таймеру (C++):

Вызов функции по таймеру в с++ - C++
Делаю слайдщоу в с++. При этом считываю путь к файлам из базы данных. Прописал функции таймера, смены слайда, выхода с нажатием клавиши....

Запуск функции по таймеру - C++
Здравствуйте, в консольном приложении у меня есть две функции, мне нужно запускать их поочередно в цикле, каждую через определенное время в...

Вызов функции внутри другой функции с передачей локальной переменной по ссылке - C++
Столкнулся с очень с интересной проблемой. Можно ли так делать? #include <iostream> using std::cout; void f(const int &ref){...

Вызов родовой функции (нужно передать массив в качестве аргумента функции через указатель) - C++
#include <iostream> using namespace std; template <class T1> class mas { public: T1 n; T1 a; void input() ...

Вызов функции в возврате значения функции - C++
Есть функция: int function1(a) { ...... return function2(function1(b),function1(c)); } Как работает такая хитрая система?

Вызов функции в параметре другой функции - C++
программа: #include <iostream> using namespace std; struct E { E() {} }; void f(const E& e)

5
DenCHS200
32 / 32 / 1
Регистрация: 07.10.2011
Сообщений: 117
11.11.2011, 22:08 #2
Ну сначала нужно установить в программе сам таймер.Дальше,я бы ввёл глобальную переменную , например, Press и присвоил бы ей по умолчанию false ,затем в обработчике событий проверял, не стала ли эта переменная равна true(А true мы присваиваем переменной при нажатии на кнопку), и если переменная равна true, то запускается функция с таймером(Идёт отсчёт таймера, до того, пока не пройдёт отсчёт до заданного времени), а потом запускается вторая функция,только чтобы 1 секунду задать, нужно в функции таймера указать 1000, т.е. если вводишь через 3 секунды 2ю функцию запустить, то таймеру передать нужно 3*1000.
1
Dar101
40 / 40 / 1
Регистрация: 12.05.2011
Сообщений: 109
11.11.2011, 22:10 #3
VMV, это точно в эту тему?
У вас там не Windows Forms/MFC случайно?
0
VMV
8 / 8 / 0
Регистрация: 08.10.2011
Сообщений: 28
11.11.2011, 22:27  [ТС] #4
DenCHS200, спасибо за направление,буду думать.
Dar101, виноват, прошу прощения.
0
Dar101
40 / 40 / 1
Регистрация: 12.05.2011
Сообщений: 109
11.11.2011, 22:29 #5
И всё-таки, тему то перенесут, а если напишите что за проект, может быть смогу помочь более подробно.
*Насколько точный должен быть таймер? Для Windows Forms по-моему на msdn писали предел точности около 20мс.

Нашел:
«Компонент Windows Forms Timer является однопоточным и ограничен точностью в 55 миллисекунд. Если необходим многопоточный таймер с большей точностью, используйте класс Timer в пространстве имен System.Timers».
0
VMV
8 / 8 / 0
Регистрация: 08.10.2011
Сообщений: 28
11.11.2011, 22:47  [ТС] #6
Проект не секретный) пишу небольшой диспетчер процессов. На форме есть табличка с информацией о процессах, несколько кнопок и поле для ввода имени процесса, который надо запустить. Одна из кнопок приостанавливает выполнение выбранного процесса. Нужно добавить возможность возобновлять работу этого процесса на определенное время, которое укажет пользователь, по нажатию на соответствующую кнопку. После истечения указанного времени процесс снова продолжает работу.
0
11.11.2011, 22:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.11.2011, 22:47
Привет! Вот еще темы с ответами:

вызов функции из под функции - C++
Добрый вечер. Такая ситуация: есть функция, назовем ее MainThreadFunc. Как можно сделать так, чтобы любая другая функция, которую я напишу,...

Вызов функции - C++
Здравствуйте! Такая задача:Разработать и испытать функцию, которая удаляет из целочисленного одномерного массива все элементы, совпадающие...

Вызов функции! - C++
Почему-то подчеркивает вот этот вызовsum sum(pa,pb,pc); . В чем проблема? #include <iostream> #include <locale.h> #include...

Вызов функции - C++
Укажите правильный вариант вызова функции вместо пропуска …….. void func(int *p, int n, float k) { } main( ) { int...


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

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

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