mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-04 05:51:27 +12:00
Improve raw_notify a bit
This commit is contained in:
parent
49610f52f5
commit
10caa2981f
3 changed files with 13 additions and 2 deletions
|
@ -1899,7 +1899,17 @@ void thread_base::initialize(void (*error_cb)(), bool(*wait_cb)(const void*))
|
|||
void thread_base::notify_abort() noexcept
|
||||
{
|
||||
m_signal.try_inc();
|
||||
atomic_storage_futex::raw_notify(+m_state_notifier);
|
||||
|
||||
while (auto ptr = m_state_notifier.load())
|
||||
{
|
||||
// Since this function is not perfectly implemented, run it in a loop
|
||||
atomic_storage_futex::raw_notify(ptr);
|
||||
|
||||
if (m_state_notifier.load() == ptr)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool thread_base::finalize(thread_state result_state) noexcept
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue