hpx/coroutines/thread_id_type.hpp#

Defined in header hpx/coroutines/thread_id_type.hpp.

See Public API for a list of names and headers that are part of the public HPX API.

namespace hpx
namespace threads

Enums

enum class thread_id_addref : std::uint8_t#

Values:

enumerator yes#
enumerator no#

Variables

constexpr thread_id const invalid_thread_id#
struct thread_id#

Public Functions

constexpr thread_id() noexcept = default#
thread_id(thread_id const&) noexcept = default#
thread_id &operator=(thread_id const&) noexcept = default#
~thread_id() = default#
inline constexpr thread_id(thread_id &&rhs) noexcept#
inline constexpr thread_id &operator=(thread_id &&rhs) noexcept#
inline explicit constexpr thread_id(thread_id_repr const thrd) noexcept#
inline constexpr thread_id &operator=(thread_id_repr const rhs) noexcept#
inline explicit constexpr operator bool() const noexcept#
inline constexpr thread_id_repr get() const noexcept#
inline constexpr void reset() noexcept#

Private Types

using thread_id_repr = void*#

Private Members

thread_id_repr thrd_ = nullptr#

Friends

inline friend constexpr friend bool operator== (std::nullptr_t, thread_id const &rhs) noexcept
inline friend constexpr friend bool operator!= (std::nullptr_t, thread_id const &rhs) noexcept
inline friend constexpr friend bool operator== (thread_id const &lhs, std::nullptr_t) noexcept
inline friend constexpr friend bool operator!= (thread_id const &lhs, std::nullptr_t) noexcept
inline friend constexpr friend bool operator== (thread_id const &lhs, thread_id const &rhs) noexcept
inline friend constexpr friend bool operator!= (thread_id const &lhs, thread_id const &rhs) noexcept
inline friend constexpr friend bool operator< (thread_id const &lhs, thread_id const &rhs) noexcept
inline friend constexpr friend bool operator> (thread_id const &lhs, thread_id const &rhs) noexcept
inline friend constexpr friend bool operator<= (thread_id const &lhs, thread_id const &rhs) noexcept
inline friend constexpr friend bool operator>= (thread_id const &lhs, thread_id const &rhs) noexcept
friend std::ostream &operator<<(std::ostream &os, thread_id const &id)#
friend void format_value(std::ostream &os, std::string_view spec, thread_id const &id)#
struct thread_id_ref#

Public Types

using thread_repr = detail::thread_data_reference_counting#

Public Functions

thread_id_ref() noexcept = default#
thread_id_ref(thread_id_ref const&) = default#
thread_id_ref &operator=(thread_id_ref const&) = default#
thread_id_ref(thread_id_ref &&rhs) noexcept = default#
thread_id_ref &operator=(thread_id_ref &&rhs) noexcept = default#
~thread_id_ref() = default#
inline explicit thread_id_ref(thread_id_repr const &thrd) noexcept#
inline explicit thread_id_ref(thread_id_repr &&thrd) noexcept#
inline thread_id_ref &operator=(thread_id_repr const &rhs) noexcept#
inline thread_id_ref &operator=(thread_id_repr &&rhs) noexcept#
inline explicit thread_id_ref(thread_repr *thrd, thread_id_addref const addref = thread_id_addref::yes) noexcept#
inline thread_id_ref &operator=(thread_repr *rhs) noexcept#
inline thread_id_ref(thread_id const &noref)#
inline thread_id_ref(thread_id &&noref, bool const add_ref = true) noexcept#
inline thread_id_ref &operator=(thread_id const &noref)#
inline thread_id_ref &operator=(thread_id &&noref) noexcept#
inline explicit constexpr operator bool() const noexcept#
inline constexpr thread_id noref() const noexcept#
inline constexpr thread_id_repr &get() & noexcept#
inline thread_id_repr &&get() && noexcept#
inline constexpr thread_id_repr const &get() const & noexcept#
inline void reset() noexcept#
inline void reset(thread_repr *thrd, bool const add_ref = true) noexcept#
inline constexpr thread_repr *detach() noexcept#

Private Types

using thread_id_repr = hpx::intrusive_ptr<detail::thread_data_reference_counting>#

Private Members

thread_id_repr thrd_#

Friends

inline friend constexpr friend bool operator== (std::nullptr_t, thread_id_ref const &rhs) noexcept
inline friend constexpr friend bool operator!= (std::nullptr_t, thread_id_ref const &rhs) noexcept
inline friend constexpr friend bool operator== (thread_id_ref const &lhs, std::nullptr_t) noexcept
inline friend constexpr friend bool operator!= (thread_id_ref const &lhs, std::nullptr_t) noexcept
inline friend constexpr friend bool operator== (thread_id_ref const &lhs, thread_id_ref const &rhs) noexcept
inline friend constexpr friend bool operator!= (thread_id_ref const &lhs, thread_id_ref const &rhs) noexcept
inline friend constexpr friend bool operator< (thread_id_ref const &lhs, thread_id_ref const &rhs) noexcept
inline friend constexpr friend bool operator> (thread_id_ref const &lhs, thread_id_ref const &rhs) noexcept
inline friend constexpr friend bool operator<= (thread_id_ref const &lhs, thread_id_ref const &rhs) noexcept
inline friend constexpr friend bool operator>= (thread_id_ref const &lhs, thread_id_ref const &rhs) noexcept
friend std::ostream &operator<<(std::ostream &os, thread_id_ref const &id)#
friend void format_value(std::ostream &os, std::string_view spec, thread_id_ref const &id)#
struct keep_alive_thread_id#

Public Functions

inline explicit keep_alive_thread_id(hpx::threads::thread_id id, bool const add_ref) noexcept#
keep_alive_thread_id(keep_alive_thread_id const &other) = delete#
keep_alive_thread_id(keep_alive_thread_id &&other) = default#
keep_alive_thread_id &operator=(keep_alive_thread_id const &other) = delete#
inline keep_alive_thread_id &operator=(keep_alive_thread_id &&other) noexcept#
inline ~keep_alive_thread_id()#
inline void detach_if_needed() noexcept#

Public Members

bool add_ref#
hpx::threads::thread_id_ref id#
namespace std#
template<>
struct hash<::hpx::threads::thread_id>#

Public Functions

inline std::size_t operator()(::hpx::threads::thread_id const &v) const noexcept#
template<>
struct hash<::hpx::threads::thread_id_ref>#

Public Functions

inline std::size_t operator()(::hpx::threads::thread_id_ref const &v) const noexcept#