MCPcopy Create free account
hub / github.com/cameron314/concurrentqueue / populate_initial_implicit_producer_hash

Function populate_initial_implicit_producer_hash

concurrentqueue.h:3354–3369  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3352 };
3353
3354 inline void populate_initial_implicit_producer_hash()
3355 {
3356 MOODYCAMEL_CONSTEXPR_IF (INITIAL_IMPLICIT_PRODUCER_HASH_SIZE == 0) {
3357 return;
3358 }
3359 else {
3360 implicitProducerHashCount.store(0, std::memory_order_relaxed);
3361 auto hash = &initialImplicitProducerHash;
3362 hash->capacity = INITIAL_IMPLICIT_PRODUCER_HASH_SIZE;
3363 hash->entries = &initialImplicitProducerHashEntries[0];
3364 for (size_t i = 0; i != INITIAL_IMPLICIT_PRODUCER_HASH_SIZE; ++i) {
3365 initialImplicitProducerHashEntries[i].key.store(details::invalid_thread_id, std::memory_order_relaxed);
3366 }
3367 hash->prev = nullptr;
3368 implicitProducerHash.store(hash, std::memory_order_relaxed);
3369 }
3370 }
3371
3372 void swap_implicit_producer_hashes(ConcurrentQueue& other)

Callers 1

ConcurrentQueueMethod · 0.85

Calls 2

MOODYCAMEL_CONSTEXPR_IFFunction · 0.85
storeMethod · 0.45

Tested by

no test coverage detected