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

Rationale

Boost , The Boost C++ Libraries BoostBook Documentation Subset , Chapter 8. Boost.Circular Buffer

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

Основной мотивацией<circular_buffer>было создание контейнера, который быработал бесшовно с STL.

Кроме того, дизайн<circular_buffer>был основан на следующих принципах:

  • максимумэффективностьдля предполагаемых применений.
  • Применяется дляобщего назначения.
  • Поведение буфера как можно более интуитивно.
  • Подходит дляспециализациис помощью адаптеров.<circular_buffer_space_optimized>является примером адаптера.
  • []. (Поддержка Debug для деталей.)

Для достижения максимальной эффективности<circular_buffer>и<circular_buffer_space_optimized>сохраняют свои элементы всмежных областях памяти, что затем позволяет:

  • Использование фиксированной памяти и отсутствие скрытого или неожиданного выделения памяти.
  • Быстрая вставка и удаление элементов спереди и сзади.
  • Быстрый постоянный случайный доступ элементов.
  • Пригодность для критически важных приложений в режиме реального времени и производительности.

Возможные применения кругового буфера включают:

  • Хранениепоследних полученных образцов, перезаписывание самых старых по мере поступления новых образцов.
  • В качестве базового контейнера дляограниченного буфера(см. пример Ограниченного буфера, код наcircular_buffer_bound_example.cpp).
  • Типкэша, хранящего заданное число последних вставленных элементов.
  • Эффективная фиксированная емкостьFIFO (First In, First Out),
  • Эффективная фиксированная емкостьLIFO (Last In, First Out)очередь, которая удаляет самые старые (вставленные в качестве первых) элементы при заполнении.

PrevUpHomeNext

Статья Rationale раздела The Boost C++ Libraries BoostBook Documentation Subset Chapter 8. Boost.Circular Buffer может быть полезна для разработчиков на c++ и boost.




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



:: Главная :: Chapter 8. Boost.Circular Buffer ::


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 17:53:12/0.0082600116729736/1