struct ConcurrentQueue::ExplicitProducer

Declaration

struct ConcurrentQueue::ExplicitProducer : public ProducerBase { /* full declaration omitted */ };

Description

////////////////////////

Declared at: libs/pika/concurrency/include/pika/concurrency/concurrentqueue.hpp:2254

Inherits from: ConcurrentQueue::ProducerBase

Member Variables

Inherited from ConcurrentQueue::ProducerBase:

protected tailIndex
protected headIndex
protected dequeueOptimisticCount
protected dequeueOvercommit
protected tailBlock
public isExplicit
public parent

Inherited from ConcurrentQueueProducerTypelessBase:

public next
public inactive
public token

Method Overview

  • public ExplicitProducer(ConcurrentQueue<T, Traits> * parent)
  • public template <typename U>bool dequeue(U & element)
  • public template <typename It>pika::concurrency::detail::ConcurrentQueue::size_t dequeue_bulk(It & itemFirst, pika::concurrency::detail::ConcurrentQueue::size_t max)
  • public template <pika::concurrency::detail::ConcurrentQueue::AllocationMode allocMode, typename U>inline bool enqueue(U && element)
  • public template <pika::concurrency::detail::ConcurrentQueue::AllocationMode allocMode, typename It>bool enqueue_bulk(It itemFirst, pika::concurrency::detail::ConcurrentQueue::size_t count)
  • public ~ExplicitProducer()

Inherited from ConcurrentQueue::ProducerBase:

Inherited from ConcurrentQueueProducerTypelessBase:

    Methods

    ExplicitProducer(
        ConcurrentQueue<T, Traits>* parent)

    Declared at: libs/pika/concurrency/include/pika/concurrency/concurrentqueue.hpp:2256

    Parameters

    ConcurrentQueue<T, Traits>* parent

    template <typename U>
    bool dequeue(U& element)

    Declared at: libs/pika/concurrency/include/pika/concurrency/concurrentqueue.hpp:2518

    Parameters

    U& element

    template <typename It>
    pika::concurrency::detail::ConcurrentQueue::size_t
    dequeue_bulk(It& itemFirst,
                 pika::concurrency::detail::
                     ConcurrentQueue::size_t max)

    Declared at: libs/pika/concurrency/include/pika/concurrency/concurrentqueue.hpp:2937

    Parameters

    It& itemFirst
    pika::concurrency::detail::ConcurrentQueue::size_t max

    template <
        pika::concurrency::detail::ConcurrentQueue::
            AllocationMode allocMode,
        typename U>
    inline bool enqueue(U&& element)

    Declared at: libs/pika/concurrency/include/pika/concurrency/concurrentqueue.hpp:2372

    Parameters

    U&& element

    template <
        pika::concurrency::detail::ConcurrentQueue::
            AllocationMode allocMode,
        typename It>
    bool enqueue_bulk(
        It itemFirst,
        pika::concurrency::detail::ConcurrentQueue::
            size_t count)

    Declared at: libs/pika/concurrency/include/pika/concurrency/concurrentqueue.hpp:2650

    Parameters

    It itemFirst
    pika::concurrency::detail::ConcurrentQueue::size_t count

    ~ExplicitProducer()

    Declared at: libs/pika/concurrency/include/pika/concurrency/concurrentqueue.hpp:2276