class thread_data_stackful
Declaration
class thread_data_stackful : public thread_data { /* full declaration omitted */ };Description
//////////////////////////////////////////////////////////////////////// A \ais the representation of a ParalleX thread. It's a first class object in ParalleX. In our implementation this is a user level thread running on top of one of the OS threads spawned by the \a A \aencapsulates: - A thread status word (see the functions \aand\a- A function to execute (the thread function) - A frame (in this implementation this is a block of memory used as the threads stack) - A block of registers (not implemented yet) Generally, \aare not created or executed directly. All functionality related to the management of \ais implemented by the thread-manager.
Declared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:47
Inherits from: thread_data
Member Variables
Inherited from thread_data_reference_counting:
Method Overview
- public inline coroutine_type::result_type call(pika::execution_base::this_thread::detail::agent_storage * agent_storage)
- public static inline pika::threads::thread_data * create(pika::threads::thread_init_data & init_data, void * queue, std::ptrdiff_t stacksize, pika::threads::thread_id_addref addref = thread_id_addref::yes)
- public void destroy()
- public std::size_t get_thread_data() const
- public void init()
- public void rebind(pika::threads::thread_init_data & init_data)
- public std::size_t set_thread_data(std::size_t data)
- public thread_data_stackful(pika::threads::thread_init_data & init_data, void * queue, std::ptrdiff_t stacksize, pika::threads::thread_id_addref addref)
- public ~thread_data_stackful()
Inherited from thread_data:
- public add_thread_exit_callback
- public destroy
- public destroy_thread
- public free_thread_exit_callbacks
- public get_backtrace
- public get_component_id
- public get_description
- public get_last_worker_thread_num
- public get_lco_description
- public get_parent_locality_id
- public get_parent_thread_id
- public get_parent_thread_phase
- public get_priority
- public get_queue
- public get_scheduler_base
- public get_stack_size
- public get_stack_size_enum
- public get_state
- public get_thread_data
- public get_thread_id
- public get_thread_phase
- public init
- public interrupt
- public interruption_enabled
- public interruption_point
- public interruption_requested
- public is_stackless
- public rebind
- protected rebind_base
- public restore_state
- public restore_state
- public run_thread_exit_callbacks
- public set_backtrace
- public set_description
- public set_interruption_enabled
- public set_last_worker_thread_num
- public set_lco_description
- public set_priority
- public set_state
- protected set_state_ex
- public set_state_tagged
- public set_thread_data
Inherited from thread_data_reference_counting:
Methods
inline coroutine_type::result_type call(
pika::execution_base::this_thread::detail::
agent_storage* agent_storage)
inline coroutine_type::result_type call(
pika::execution_base::this_thread::detail::
agent_storage* agent_storage)Declared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:60
Parameters
- pika::execution_base::this_thread::detail:: agent_storage* agent_storage
static inline pika::threads::thread_data* create(
pika::threads::thread_init_data& init_data,
void* queue,
std::ptrdiff_t stacksize,
pika::threads::thread_id_addref addref =
thread_id_addref::yes)
static inline pika::threads::thread_data* create(
pika::threads::thread_init_data& init_data,
void* queue,
std::ptrdiff_t stacksize,
pika::threads::thread_id_addref addref =
thread_id_addref::yes)Description
/////////////////////////////////////////////////////////////////////////
Declared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:155
Parameters
- pika::threads::thread_init_data& init_data
- void* queue
- std::ptrdiff_t stacksize
- pika::threads::thread_id_addref addref = thread_id_addref::yes
void destroy()
void destroy()Declared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:159
std::size_t get_thread_data() const
std::size_t get_thread_data() constDeclared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:86
void init()
void init()Declared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:129
void rebind(
pika::threads::thread_init_data& init_data)
void rebind(
pika::threads::thread_init_data& init_data)Declared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:134
Parameters
- pika::threads::thread_init_data& init_data
std::size_t set_thread_data(std::size_t data)
std::size_t set_thread_data(std::size_t data)Declared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:91
Parameters
- std::size_t data
thread_data_stackful(
pika::threads::thread_init_data& init_data,
void* queue,
std::ptrdiff_t stacksize,
pika::threads::thread_id_addref addref)
thread_data_stackful(
pika::threads::thread_init_data& init_data,
void* queue,
std::ptrdiff_t stacksize,
pika::threads::thread_id_addref addref)Declared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:143
Parameters
- pika::threads::thread_init_data& init_data
- void* queue
- std::ptrdiff_t stacksize
- pika::threads::thread_id_addref addref
~thread_data_stackful()
~thread_data_stackful()Declared at: libs/pika/threading_base/include/pika/threading_base/thread_data_stackful.hpp:153