DWORD *pdwSignaledObject // OUT
) = 0;
+ virtual
+ void
+ YieldThread() = 0;
+
virtual
PAL_ERROR
AbandonObjectsOwnedByThread(
return palErr;
}
+ void CPalSynchronizationManager::YieldThread()
+ {
+ sched_yield();
+ }
+
PAL_ERROR CPalSynchronizationManager::ThreadNativeWait(
ThreadNativeWaitData * ptnwdNativeWaitData,
DWORD dwTimeout,
ThreadWakeupReason *ptwrWakeupReason,
DWORD *pdwSignaledObject);
+ virtual void YieldThread();
+
virtual PAL_ERROR AbandonObjectsOwnedByThread(
CPalThread *pthrCurrent,
CPalThread *pthrTarget);
}
else
{
+ g_pSynchronizationManager->YieldThread();
dwRet = 0;
}