| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Запуск задач по расписанию |
| Автор: zone51 10.4.2008, 01:45 |
| Доброго времени суток товарищи. Помогите пожалуйста решить проблему: Задача: В папке хранятся медиа файлы. Каждый файл проигрывается на большом мониторе В базе данных хранится информация о файлах а именно: 1)Время запуска каждого файла 2)Время остановки проигрывания файла Робот проходит по списку файлов в потоке для каждого файла определяет время запуска и назначает на ближайшую дату запуска проигрывание какого то конкретного файла Вопрос: как сделать такой планировщик на С++ билдере? То есть назначить какому то событию время запуска. А в принципе можно и сделать расписание. Как это сделать? Спасибо большое всем кто откликнется. |
| Автор: Данкинг 10.4.2008, 01:48 |
| По таймеру ежесекундно проверять время. Если совпало с заданным для конкретного файла, то запускаем его. Так же и остановка. |
| Автор: zone51 10.4.2008, 02:04 |
| Данкинг, Но это же не очень оптимально. |
| Автор: Invisible_kid 10.4.2008, 10:24 |
| zone51, есть идеи получше? |
| Автор: Rififi 10.4.2008, 10:34 |
| zone51, - при запуске найти минимальную разницу во времени до следующего запуска - в потоке спать до этого момента - проснуться, запустить, пересчитать дельту t, уснуть. |
| Автор: Данкинг 10.4.2008, 10:41 | ||
В каком плане? А что тут такого неоптимального, ИМХО как раз вполне логично. |
| Автор: Rififi 10.4.2008, 12:37 |
| Lazin, WM_TIMECHANGE? |
| Автор: Lazin 11.4.2008, 11:14 |
| да, но тогда нужно не ждать в отдельном потоке события от таймера, а обрабатывать сообщение от таймера и WM_TIMECHANGE в основном потоке, иначе реализация слишком сложная |