Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Timer.1 - Using a timer synchronously

Boost , Boost.Asio , Tutorial

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Эта учебная программа вводит asio, показывая, как выполнить блокирующее ожидание на таймере.

Мы начинаем с включения необходимых файлов заголовка.

Все классы асио можно использовать, просто включив«asio.hpp».Файл заголовка.

#include <iostream>
#include <boost/asio.hpp>

Поскольку в этом примере используются таймеры, мы должны включить соответствующий Boost. Файл заголовка Date_Time для манипулирования временем.

#include <boost/date_time/posix_time/posix_time.hpp>

Все программы, использующие Asio, должны иметь хотя бы один объектio_service. Этот класс обеспечивает доступ к функциональности ввода/вывода. Объявляем объект такого типа первым делом в главной функции.

int main()
{
  boost::asio::io_service io;

Далее объявляем объект типа boost::asio::deadline_timer. Основные классы asio, которые обеспечивают функциональность ввода-вывода (или, как в этом случае, функциональность таймера), всегда ссылаются на io_service в качестве первого аргумента конструктора. Второй аргумент конструктору устанавливает, что таймер истекает через 5 секунд.

  boost::asio::deadline_timer t(io, boost::posix_time::seconds(5));

В этом простом примере мы выполняем блокирующее ожидание на таймере. То есть призыв кdeadline_timer::wait()не вернется до истечения срока действия таймера, через 5 секунд после его создания (т.е. не с момента начала ожидания).

Таймер крайнего срока всегда находится в одном из двух состояний: «истечен» или «не истек». Есликрайний срок_timer::wait()функция вызывается на просроченный таймер, он немедленно возвращается.

  t.wait();

Наконец мы напечатаем обязательное«Привет, мир!»сообщение, чтобы показать, когда срок истек.

  std::cout << "Hello, world!" << std::endl;
  return 0;
}

См.полный список источников

Вернуться вучебный индекс

Следующий:Таймер.2 - Использование таймера асинхронно


PrevUpHomeNext

Статья Timer.1 - Using a timer synchronously раздела Boost.Asio Tutorial может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Tutorial ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 21:47:03/0.0064041614532471/0