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

Class template mutable_constant

Boost , Chapter 1. Boost.Log v2 , Attributes

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 mutable_constant

boost::log::attributes::mutable_constant — A class of an attribute that holds a single constant value with ability to change it.

Synopsis

// In header: <boost/log/attributes/mutable_constant.hpp>
template<typename T, typename MutexT = void, typename ScopedWriteLockT = auto, 
         typename ScopedReadLockT = auto> 
class mutable_constant : public attribute {
public:
  // types
  typedef T value_type;  // The attribute value type. 
  // member classes/structs/unions
  // Factory implementation.
  class impl : public attribute::impl {
  public:
    // construct/copy/destruct
    explicit impl(value_type const &);
    explicit impl(value_type &&);
    // public member functions
    virtual attribute_value get_value();
    void set(value_type const &);
    void set(value_type &&);
    value_type get() const;
  };
  // construct/copy/destruct
  explicit mutable_constant(value_type const &);
  explicit mutable_constant(value_type &&);
  explicit mutable_constant(cast_source const &);
  // public member functions
  void set(value_type const &);
  void set(value_type &&);
  value_type get() const;
  // protected member functions
  impl * get_impl() const;
};

Description

Атрибут mutable_constant сохраняет одно значение типа, указанное как первый аргумент шаблона. Это значение возвращается на каждое приобретение атрибута.

Атрибут также позволяет изменять сохраненное значение, даже если атрибут зарегистрирован в наборе атрибутов. Для обеспечения безопасности потока таких модификаций класс mutable_constant также параметризирован тремя дополнительными аргументами шаблонов: тип мутекса, объемное письмо и масштабированные типы замков. Если не указано, то типы блокировки автоматически выводятся на основе типаmut.

Реализация может избежать использования этих типов для создания и использования mutex, если доступен более эффективный метод синхронизации (например, атомные операции на типе значений). По умолчанию синхронизация не производится.

mutable_constant public construct/copy/destruct

  1. explicit mut_constant( value_type const & value);

    Конструктор с инициализацией

  2. explicit mutable_constant( value_type && value);

    Конструктор с инициализацией

  3. explicit mut_constant(cast_source const& источник);

    Конструктор для поддержки литья

mutable_constant public member functions

  1. void set( value_type const & value);

    Метод устанавливает новое значение атрибута. Реализация запирает мутекс исключительно для защиты назначения стоимости.

  2. void set( value_type && value);

    Метод устанавливает новое значение атрибута.

  3.  value_type get() const;

    Метод приобретает текущее значение атрибута. Реализация неисключительно блокируетmut для защиты приобретения стоимости.

mutable_constant protected member functions

  1. impl * get_impl() const;

    >>

    Речь:


    PrevUpHomeNext

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




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



    :: Главная :: Attributes ::


    реклама


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

    Время компиляции файла: 2024-08-30 11:47:00
    2025-07-04 22:28:58/0.006295919418335/0