Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      Standard library header <hazard_pointer> (C++26)

      From cppreference.com
      <cpp‎ |header
       
       
      Standard library headers
       

      This header is part of thethread support library.

      Contents

      Classes

      allows an object to be hazard-protectable
      (class template)[edit]
      single-writer multi-reader pointer that can be owned by at most one thread at any point of time
      (class)[edit]

      Functions

      constructs a hazard pointer
      (function)[edit]
      specializes thestd::swap algorithm
      (function template)[edit]

      [edit]Synopsis

      namespace std{// hazard_pointer_obj_basetemplate<class T,class D= default_delete<T>>class hazard_pointer_obj_base; // hazard_pointerclass hazard_pointer; // make_hazard_pointer  hazard_pointer make_hazard_pointer();void swap(hazard_pointer&, hazard_pointer&)noexcept;}

      [edit]Class templatestd::hazard_pointer_obj_base

      namespace std{template<class T,class D= default_delete<T>>class hazard_pointer_obj_base{public:void retire(D d= D())noexcept;protected:    hazard_pointer_obj_base()=default;    hazard_pointer_obj_base(const hazard_pointer_obj_base&)=default;    hazard_pointer_obj_base(hazard_pointer_obj_base&&)=default;    hazard_pointer_obj_base& operator=(const hazard_pointer_obj_base&)=default;    hazard_pointer_obj_base& operator=(hazard_pointer_obj_base&&)=default;    ~hazard_pointer_obj_base()=default;private:    D deleter;// exposition only};}

      [edit]Classstd::hazard_pointer

      namespace std{class hazard_pointer{public:    hazard_pointer()noexcept;    hazard_pointer(hazard_pointer&&)noexcept;    hazard_pointer& operator=(hazard_pointer&&)noexcept;    ~hazard_pointer(); bool empty()constnoexcept;template<class T> T* protect(const atomic<T*>& src)noexcept;template<class T>bool try_protect(T*& ptr,const atomic<T*>& src)noexcept;template<class T>void reset_protection(const T* ptr)noexcept;void reset_protection(nullptr_t= nullptr)noexcept;void swap(hazard_pointer&)noexcept;};}
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/header/hazard_pointer&oldid=163899"

      [8]ページ先頭

      ©2009-2025 Movatter.jp