File tree Expand file tree Collapse file tree 1 file changed +4
-4
lines changed
WaitFreeRingBufferUtilities/Include Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Original file line number Diff line number Diff line change @@ -157,9 +157,9 @@ public:
157
157
bool expected_is_pusher_processing = false ;
158
158
if (std::atomic_compare_exchange_strong (&BaseType::elements[element_index].is_pusher_processing , &expected_is_pusher_processing, true ))
159
159
{
160
- if (BaseType::elements[element_index].value_ptr .load (std::memory_order_relaxed ))
160
+ if (BaseType::elements[element_index].value_ptr .load (std::memory_order_acquire ))
161
161
{
162
- BaseType::elements[element_index].is_pusher_processing .store (false , std::memory_order_release );
162
+ BaseType::elements[element_index].is_pusher_processing .store (false , std::memory_order_relaxed );
163
163
continue ;
164
164
}
165
165
@@ -199,10 +199,10 @@ public:
199
199
bool expected_is_popper_processing = false ;
200
200
if (std::atomic_compare_exchange_strong (&BaseType::elements[element_index].is_popper_processing , &expected_is_popper_processing, true ))
201
201
{
202
- const auto value_ptr = BaseType::elements[element_index].value_ptr .load (std::memory_order_relaxed );
202
+ const auto value_ptr = BaseType::elements[element_index].value_ptr .load (std::memory_order_acquire );
203
203
if (!value_ptr)
204
204
{
205
- BaseType::elements[element_index].is_popper_processing .store (false , std::memory_order_release );
205
+ BaseType::elements[element_index].is_popper_processing .store (false , std::memory_order_relaxed );
206
206
continue ;
207
207
}
208
208
You can’t perform that action at this time.
0 commit comments