mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-11-06 01:35:09 +01:00
7f7352ed59
`SignalToAddress`/`ConditionVariableSignal` need to wake waiters in priority order, while threads are inserted in order this doesn't remain the case as priority updates don't reinsert the thread into `syncWaiters`. It was determined that reinsertion into `syncWaiters` would be fairly complex due to locking the `syncWaitersMutex` with the thread's mutexes. To avoid this, this commit instead sorts waiters by priority at signal time to always wake threads in the right order. |
||
---|---|---|
.. | ||
skyline | ||
driver_jni.cpp | ||
emu_jni.cpp | ||
loader_jni.cpp |