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

Class template bounded_ordering_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_ordering_queue

boost::log::sinks::bounded_ordering_queue — Bounded ordering log record queueing strategy.

Synopsis

// In header: <boost/log/sinks/bounded_ordering_queue.hpp>
template<typename OrderT, std::size_t MaxQueueSizeV, 
         typename OverflowStrategyT> 
class bounded_ordering_queue : private OverflowStrategyT {
public:
  // construct/copy/destruct
  template<typename ArgsT> explicit bounded_ordering_queue(ArgsT const &);
  // public member functions
  posix_time::time_duration get_ordering_window() const;
  // public static functions
  static posix_time::time_duration get_default_ordering_window();
  // 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_ordering_queue>предназначен для использования с фронтендом<asynchronous_sink>в качестве стратегии постановки в очередь.

Эта стратегия обеспечивает следующие свойства механизма очередей записей:

  • Очередь имеет ограниченную емкость, определенную параметром шаблона<MaxQueueSizeV>.

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

  • Очередь имеет фиксированное окно задержки. Это означает, что каждая запись журнала, помещенная в очередь, как правило, не будет очерчена в течение определенного периода времени.

  • Очередь выполняет стабильный порядок записи в окне задержки. Предикат упорядочения может быть указан в<OrderT>шаблонном параметре.

bounded_ordering_queue public construct/copy/destruct

  1. <
    template<typenameArgsT>explicitbounded_ordering_queue(ArgsTconst&args);
    >Начало строительства.

bounded_ordering_queue public member functions

  1. Восстановление СИЗО СИЗО, цитирование

    [ORIG_END] -->

bounded_ordering_queue public static functions

  1. Возвращаясь к муфте. Появился разъем silty специфичный subject , входящий в состав операционной системы .

    [ORIG_END] -->

bounded_ordering_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_ordering_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:00:28/0.0050930976867676/1