[*] remove redundant branch from sync primitive
[*] optimize event
This commit is contained in:
parent
1265027550
commit
894df69fe0
@ -32,10 +32,16 @@ namespace Aurora::Threading::Primitives
|
||||
|
||||
bool EventImpl::LockNS(AuUInt64 uTimeout /*=0*/)
|
||||
{
|
||||
AU_LOCK_GUARD(this->mutex_);
|
||||
AuInt64 uStartTime {};
|
||||
AuInt64 uEndTime {};
|
||||
|
||||
AuInt64 uStartTime = Time::SteadyClockNS();
|
||||
AuInt64 uEndTime = uStartTime + uTimeout;
|
||||
if (uTimeout)
|
||||
{
|
||||
uStartTime = Time::SteadyClockNS();
|
||||
uEndTime = uStartTime + uTimeout;
|
||||
}
|
||||
|
||||
AU_LOCK_GUARD(this->mutex_);
|
||||
|
||||
while (!AtomicIsEventSetLogic())
|
||||
{
|
||||
@ -58,11 +64,6 @@ namespace Aurora::Threading::Primitives
|
||||
}
|
||||
}
|
||||
|
||||
if (this->bAtomicRelease_)
|
||||
{
|
||||
this->bTriggered_ = false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -90,9 +91,8 @@ namespace Aurora::Threading::Primitives
|
||||
|
||||
void EventImpl::Reset()
|
||||
{
|
||||
this->mutex_.Lock();
|
||||
AU_LOCK_GUARD(this->mutex_);
|
||||
this->bTriggered_ = false;
|
||||
this->mutex_.Unlock();
|
||||
}
|
||||
|
||||
void EventImpl::Set()
|
||||
|
Loading…
Reference in New Issue
Block a user