You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Let's say we have two thread writing values into a dynamic bitset. If the thread tries to change bits stored in the same underlying integer, we may have a race condition in the following code:
This line is equivalent to m_block = m_block | m_mask.
Here m_block is a reference to the underlying integer used to store a group of bits. The issue is that Thread_1 may compute m_block | m_mask then Thread_2 computes m_block | m_mask and assigns it to m_block. Then Thread_1 writes m_block and overwrites the bit previously computed by Thread_2.
The text was updated successfully, but these errors were encountered:
Let's say we have two thread writing values into a dynamic bitset. If the thread tries to change bits stored in the same underlying integer, we may have a race condition in the following code:
This line is equivalent to
m_block = m_block | m_mask
.Here
m_block
is a reference to the underlying integer used to store a group of bits. The issue is that Thread_1 may computem_block | m_mask
then Thread_2 computesm_block | m_mask
and assigns it tom_block
. Then Thread_1 writesm_block
and overwrites the bit previously computed by Thread_2.The text was updated successfully, but these errors were encountered: