---
name: "__gnu_parallel::_QSBThreadLocal"
section: "3cxx"
platform: "linux"
package: "libstdc++-12-doc"
version: "12.4.0-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/__gnu_parallel::_QSBThreadLocal/3cxx"
---

# \_\_gnu\_parallel::\_QSBThreadLocal(3cxx)

Information local to one thread in the parallel quicksort run.

## NAME

\_\_gnu\_parallel::\_QSBThreadLocal\< \_RAIter \> - Information local to one thread in the parallel quicksort run.

## SYNOPSIS

`#include <balanced_quicksort.h>`

### Public Types

typedef \_TraitsType::difference\_type **\_DifferenceType**\
 typedef **std::pair**\< \_RAIter, \_RAIter \> **\_Piece**\
 Continuous part of the sequence, described by an iterator pair.  typedef **std::iterator\_traits**\< \_RAIter \> **\_TraitsType**\

### 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 \>"Information local to one thread in the parallel quicksort run.

## 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

### 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()**.

### template\<typename \_RAIter \> \_Piece \_\_gnu\_parallel::\_QSBThreadLocal\< \_RAIter \>::\_M\_global

The complete sequence to sort.

### 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()**.

### template\<typename \_RAIter \> \_RestrictedBoundedConcurrentQueue\<\_Piece\> \_\_gnu\_parallel::\_QSBThreadLocal\< \_RAIter \>::\_M\_leftover\_parts

Work-stealing queue.

Referenced by **\_\_gnu\_parallel::\_\_qsb\_local\_sort\_with\_helping()**.

### 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.
