tbb::internal::arena_slot_line1 Struct Reference

`#include <scheduler_common.h>`

Inheritance diagram for tbb::internal::arena_slot_line1:
Collaboration diagram for tbb::internal::arena_slot_line1:

## Public Attributes

generic_scheduler * | my_scheduler
| Scheduler of the thread attached to the slot. More...
task **__TBB_atomic | task_pool
__TBB_atomic size_t | head
| Index of the first ready task in the deque. More...

## Detailed Description

Definition at line 329 of file scheduler_common.h.

## Member Data Documentation

## head

__TBB_atomic size_t tbb::internal::arena_slot_line1::head

Index of the first ready task in the deque.

Modified by thieves, and by the owner during compaction/reallocation

Definition at line 343 of file scheduler_common.h.

Referenced by tbb::internal::generic_scheduler::cleanup_master(), tbb::internal::generic_scheduler::commit_relocated_tasks(), tbb::internal::generic_scheduler::get_task(), tbb::internal::generic_scheduler::is_quiescent_local_task_pool_empty(), tbb::internal::generic_scheduler::is_quiescent_local_task_pool_reset(), tbb::internal::generic_scheduler::prepare_task_pool(), tbb::internal::generic_scheduler::publish_task_pool(), tbb::internal::generic_scheduler::reset_task_pool_and_leave(), and tbb::internal::generic_scheduler::steal_task_from().

## my_scheduler

generic_scheduler* tbb::internal::arena_slot_line1::my_scheduler

Scheduler of the thread attached to the slot.

Marks the slot as busy, and is used to iterate through the schedulers belonging to this arena

Definition at line 333 of file scheduler_common.h.

Referenced by tbb::internal::generic_scheduler::cleanup_master(), tbb::internal::market::detach_arena(), and tbb::internal::generic_scheduler::nested_arena_exit().

## task_pool

task* * __TBB_atomic tbb::internal::arena_slot_line1::task_pool

Also is used to specify if the slot is empty or locked: 0 - empty -1 - locked

Definition at line 339 of file scheduler_common.h.

Referenced by tbb::internal::generic_scheduler::acquire_task_pool(), tbb::internal::generic_scheduler::cleanup_master(), tbb::internal::generic_scheduler::is_local_task_pool_quiescent(), tbb::internal::generic_scheduler::is_task_pool_published(), tbb::internal::generic_scheduler::leave_task_pool(), tbb::internal::generic_scheduler::lock_task_pool(), tbb::internal::generic_scheduler::publish_task_pool(), tbb::internal::generic_scheduler::release_task_pool(), tbb::internal::generic_scheduler::reset_task_pool_and_leave(), tbb::internal::generic_scheduler::steal_task(), and tbb::internal::generic_scheduler::unlock_task_pool().

The documentation for this struct was generated from the following file:

- scheduler_common.h

Copyright © 2005-2020 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.