[*] A Linux and other OS insurance policy: rel/xref 7357764c
This commit is contained in:
parent
5a9292ad1a
commit
7477bfe56f
@ -534,7 +534,10 @@ namespace Aurora::Threading::Primitives
|
|||||||
{
|
{
|
||||||
auto pThat = this->GetFutexConditionWriter();
|
auto pThat = this->GetFutexConditionWriter();
|
||||||
AuAtomicAdd(pThat, 1u);
|
AuAtomicAdd(pThat, 1u);
|
||||||
InternalLTSWakeOne(pThat);
|
if (AuAtomicLoad(&this->writersPending_))
|
||||||
|
{
|
||||||
|
InternalLTSWakeOne(pThat);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -564,9 +567,11 @@ namespace Aurora::Threading::Primitives
|
|||||||
if (gUseFutexRWLock)
|
if (gUseFutexRWLock)
|
||||||
{
|
{
|
||||||
auto pThat = this->GetFutexConditionWriter();
|
auto pThat = this->GetFutexConditionWriter();
|
||||||
AuUInt32 uCount = AuAtomicLoad(&this->writersPending_) + iBias;
|
if (auto uCount = AuUInt32(AuAtomicLoad(&this->writersPending_) + iBias))
|
||||||
AuAtomicAdd(pThat, uCount);
|
{
|
||||||
InternalLTSWakeCount(pThat, uCount);
|
AuAtomicAdd(pThat, uCount);
|
||||||
|
InternalLTSWakeCount(pThat, uCount);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user