ViPendingTryReserveWorker
UINT64 __stdcall ViPendingTryReserveWorker(_VF_PENDING_DEFERRAL_CONTEXT *DeferralContext){
int v1;
unsigned int v2;
v1 = ViPendingWorkersCount;
v2 = ViPendingWorkerIndexHint;
while( _InterlockedCompareExchange64(&qword_140C1CA88[6 * v2], (signed __int64)DeferralContext, 0i64) )
{
v2 = v2 + 1 < ViPendingWorkersCount ? v2 + 1 : 0;
if( !--v1 )
{
++ViPendingWorkersBusyCount;
return 0xFFFFFFFFi64;
}
}
ViPendingWorkerIndexHint = v2 + 1 < ViPendingWorkersCount ? v2 + 1 : 0;
return v2;
}Referenced by:
ViPendingQueuePassiveLevelCompletion