Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Object Pascal: кроссплатформенные технологии > TTimer и консольное приложение


Автор: andrey_pst 24.3.2006, 14:38
Решил попробовать себя в программировании под Linux и столкнулся с такой проблемой:
В консольном приложении необходимо реализовать таймер. Попробовал использовать объект
класса TTimer, но вот беда - он тянет за собой модуль Qt, а в моем случае это недопустимо,
так как X-Server'а на машине Linux нет и не будет. Естественно, приложение при запуске
выдает ошибку "cannot connect to X server".
Подскажите, есть ли готовый класс реализации таймера без использования Qt? Если нет,
то может кто-нибудь уже решал такую проблему и поделится информацией?

Автор: Snowy 24.3.2006, 14:51
В виндах можно легко использовать API таймер.
Что-то аналогичное по идее должно быть и под никсами.
Как альтернатива - создать новый thread и выдерживать в нем периоды через Sleep, а между периодами вызывать синхронизацию.
Процедура синхронизации и будет OnTimer.
Добавлено @ 14:59
Ага. Вот нашел решение.
http://www.theo.ch/Kylix/FreeTimer.zip
Это компонент - QT-Free таймер
Цитата
Works like TTimer for Qt-Apps. The included Demo shows how to use it in console-apps without using Qt.

Добавлено @ 15:05
Так и есть. Посмотрел этот компонент - как раз юзается вариант с тредом.
Приаттачиваю его к форуму, чтоб не потерялся...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)