__GNU_PARALLEL::_QSBTHREADLOCAL(3cxx)

πŸ’– NAME πŸ’–

Bestie, welcome to the libstdc++ manual page for __gnu_parallel::_QSBThreadLocal< _RAIter > in section 3cxx β€” it's giving "information local to one thread in the parallel quicksort run." That's the whole name vibe, periodt.


πŸ’« SYNOPSIS πŸ’«

#include <balanced_quicksort.h>

πŸŽ€ Public Types πŸŽ€

typedef _TraitsType::difference_type _DifferenceType
typedef std::pair< _RAIter, _RAIter > _Piece
typedef std::iterator_traits< _RAIter > _TraitsType

The _Piece one comes with a little note: continuous part of the sequence, described by an iterator pair. The other two are the typedefs exactly as shown, no extra lore.

🫢 Public Member Functions 🫢

  • _QSBThreadLocal (int __queue_size) β€” Constructor.

🌸 Public Attributes 🌸

  • volatile _DifferenceType * _M_elements_leftover β€” Pointer to a counter of elements left over to sort.
  • _Piece _M_global β€” The complete sequence to sort.
  • _Piece _M_initial β€” Initial piece to work on.
  • _RestrictedBoundedConcurrentQueue< _Piece > _M_leftover_parts β€” Work-stealing queue.
  • _ThreadIndex _M_num_threads β€” Number of threads involved in this algorithm.

πŸ”₯ Detailed Description πŸ”₯

template<typename _RAIter>
struct __gnu_parallel::_QSBThreadLocal< _RAIter >

The description says: "Information local to one thread in the parallel quicksort run. Yes, there's a renegade quote mark at the start in the source, and I'm preserving the chaos. πŸ’…


πŸ¦‹ Member Typedef Documentation πŸ¦‹

template<typename _RAIter > typedef std::pair<_RAIter, _RAIter> __gnu_parallel::_QSBThreadLocal< _RAIter >::_Piece

Continuous part of the sequence, described by an iterator pair.


✨ Constructor & Destructor Documentation ✨

template<typename _RAIter > __gnu_parallel::_QSBThreadLocal< _RAIter >::_QSBThreadLocal (int __queue_size) [inline]

Constructor.

Parameters

  • __queue_size β€” size of the work-stealing queue.

πŸ‘‘ Member Data Documentation πŸ‘‘

_M_elements_leftover

template<typename _RAIter > volatile _DifferenceType* __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_elements_leftover

Pointer to a counter of elements left over to sort.

Referenced by __gnu_parallel::__parallel_sort_qsb(), __gnu_parallel::__qsb_conquer(), and __gnu_parallel::__qsb_local_sort_with_helping().

_M_global

template<typename _RAIter > _Piece __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_global

The complete sequence to sort.

_M_initial

template<typename _RAIter > _Piece __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_initial

Initial piece to work on.

Referenced by __gnu_parallel::__qsb_conquer(), and __gnu_parallel::__qsb_local_sort_with_helping().

_M_leftover_parts

template<typename _RAIter > _RestrictedBoundedConcurrentQueue<_Piece> __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_leftover_parts

Work-stealing queue.

Referenced by __gnu_parallel::__qsb_local_sort_with_helping().

_M_num_threads

template<typename _RAIter > _ThreadIndex __gnu_parallel::_QSBThreadLocal< _RAIter >::_M_num_threads

Number of threads involved in this algorithm.

Referenced by __gnu_parallel::__qsb_local_sort_with_helping().


🌈 Author 🌈

Generated automatically by Doxygen for libstdc++ from the source code.


Sign-off era: this is the libstdc++ manual page for __gnu_parallel::_QSBThreadLocal< _RAIter > (section 3cxx) πŸ’œ β€” the footer date slot was giving missing-in-action, so I'm not inventing one, bestie. πŸŽ€