hpx/coroutines/thread_id_type.hpp

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

template<>
struct hash<::hpx::threads::thread_id>

Public Functions

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

Public Functions

std::size_t operator()(::hpx::threads::thread_id_ref const &v) const
namespace hpx
namespace threads

Enums

enum thread_id_addref

Values:

yes
no

Variables

constexpr const thread_id invalid_thread_id
struct thread_id

Public Functions

thread_id()
thread_id(thread_id const&)
thread_id &operator=(thread_id const&)
constexpr thread_id(thread_id &&rhs)
constexpr thread_id &operator=(thread_id &&rhs)
constexpr thread_id(thread_id_repr const &thrd)
constexpr thread_id &operator=(thread_id_repr const &rhs)
constexpr operator bool() const
constexpr thread_id_repr get() const
constexpr void reset()

Private Types

using thread_id_repr = void*

Private Members

thread_id_repr thrd_ = nullptr

Friends

friend constexpr bool operator==(std::nullptr_t, thread_id const &rhs)
friend constexpr bool operator!=(std::nullptr_t, thread_id const &rhs)
friend constexpr bool operator==(thread_id const &lhs, std::nullptr_t)
friend constexpr bool operator!=(thread_id const &lhs, std::nullptr_t)
friend constexpr bool operator==(thread_id const &lhs, thread_id const &rhs)
friend constexpr bool operator!=(thread_id const &lhs, thread_id const &rhs)
friend constexpr bool operator<(thread_id const &lhs, thread_id const &rhs)
friend constexpr bool operator>(thread_id const &lhs, thread_id const &rhs)
friend constexpr bool operator<=(thread_id const &lhs, thread_id const &rhs)
friend constexpr bool operator>=(thread_id const &lhs, thread_id const &rhs)
template<typename Char, typename Traits>
std::basic_ostream<Char, Traits> &operator<<(std::basic_ostream<Char, Traits> &os, thread_id const &id)
void format_value(std::ostream &os, boost::string_ref spec, thread_id const &id)
struct thread_id_ref

Public Types

using thread_repr = detail::thread_data_reference_counting

Public Functions

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

Private Types

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

Private Members

thread_id_repr thrd_

Friends

bool operator==(std::nullptr_t, thread_id_ref const &rhs)
bool operator!=(std::nullptr_t, thread_id_ref const &rhs)
bool operator==(thread_id_ref const &lhs, std::nullptr_t)
bool operator!=(thread_id_ref const &lhs, std::nullptr_t)
bool operator==(thread_id_ref const &lhs, thread_id_ref const &rhs)
bool operator!=(thread_id_ref const &lhs, thread_id_ref const &rhs)
bool operator<(thread_id_ref const &lhs, thread_id_ref const &rhs)
bool operator>(thread_id_ref const &lhs, thread_id_ref const &rhs)
bool operator<=(thread_id_ref const &lhs, thread_id_ref const &rhs)
bool operator>=(thread_id_ref const &lhs, thread_id_ref const &rhs)
template<typename Char, typename Traits>
std::basic_ostream<Char, Traits> &operator<<(std::basic_ostream<Char, Traits> &os, thread_id_ref const &id)
void format_value(std::ostream &os, boost::string_ref spec, thread_id_ref const &id)
namespace std
template<>
struct hash<::hpx::threads::thread_id>

Public Functions

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

Public Functions

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