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

Class template bounded_fifo_queue

Boost , Chapter 1. Boost.Log v2 , Sinks

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

Class template bounded_fifo_queue

boost::log::sinks::bounded_fifo_queue — Bounded FIFO log record queueing strategy.

Synopsis

// In header: <boost/log/sinks/bounded_fifo_queue.hpp>
template<std::size_t MaxQueueSizeV, typename OverflowStrategyT> 
class bounded_fifo_queue : private OverflowStrategyT {
public:
  // construct/copy/destruct
  bounded_fifo_queue();
  template<typename ArgsT> explicit bounded_fifo_queue(ArgsT const &);
  // protected member functions
  void enqueue(record_view const &);
  bool try_enqueue(record_view const &);
  bool try_dequeue_ready(record_view &);
  bool try_dequeue(record_view &);
  bool dequeue_ready(record_view &);
  void interrupt_dequeue();
};

Description

Класс<bounded_fifo_queue>предназначен для использования с фронтендом<asynchronous_sink>в качестве стратегии постановки в очередь.

Эта стратегия описывает логику очередей записей журнала. Очередь имеет ограниченную емкость, при достижении которой операция очереди будет ссылаться на стратегию обработки переполнения, указанную в шаблонном параметре<OverflowStrategyT>для обработки ситуации. Библиотека предоставляет стратегии обработки переполнения для большинства распространенных случаев:<drop_on_overflow>будет молча отбрасывать запись журнала, а<block_on_overflow>поставит очередь, чтобы подождать, пока в очереди не останется места.

Очередь записи журнала не накладывает никакого заказа на очерченные элементы, кроме порядка, в котором они стоят в очереди.

bounded_fifo_queue public construct/copy/destruct

  1. <
    bounded_fifo_queue();
    >Конструктор по умолчанию.
  2. <
    template<typenameArgsT>explicitbounded_fifo_queue(ArgsTconst&);
    >Начало строительства.

bounded_fifo_queue protected member functions

  1. <
    voidenqueue(record_viewconst&rec);
    >Запись очередей в очередь.
  2. <
    booltry_enqueue(record_viewconst&rec);
    >Попытки записать регистрационную запись в очередь.
  3. <
    booltry_dequeue_ready(record_view&rec);
    >Попытки очередей записи журнала, готовой к обработке из очереди, не блокируют, если очередь пуста.
  4. <
    booltry_dequeue(record_view&rec);
    >Попытки очередей записи журнала из очереди, не блокирует, если очередь пуста.
  5. <
    booldequeue_ready(record_view&rec);
    >Запись очередей из очереди, блоки, если очередь пуста.
  6. <
    voidinterrupt_dequeue();
    >Пробуждает нить, возможно, заблокированную в<dequeue>методе.

PrevUpHomeNext

Статья Class template bounded_fifo_queue раздела Chapter 1. Boost.Log v2 Sinks может быть полезна для разработчиков на c++ и boost.




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



:: Главная :: Sinks ::


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 21:46:24/0.008159875869751/1