Searched refs:pOnce (Results 1 - 2 of 2) sorted by relevance
/vbox/src/VBox/Runtime/common/misc/ |
H A D | once.cpp | 176 * @param pOnce The execute once structure. 180 static int rtOnceOtherThread(PRTONCE pOnce, PRTSEMEVENTMULTI phEvtM) argument 185 int32_t iState = ASMAtomicReadS32(&pOnce->iState); 192 if (ASMAtomicCmpXchgS32(&pOnce->iState, RTONCESTATE_BUSY_CREATING_SEM, RTONCESTATE_BUSY_NO_SEM)) 197 ASMAtomicWriteHandle(&pOnce->hEventMulti, *phEvtM); 198 int32_t cRefs = ASMAtomicIncS32(&pOnce->cEventRefs); Assert(cRefs == 1); NOREF(cRefs); 200 if (!ASMAtomicCmpXchgS32(&pOnce->iState, RTONCESTATE_BUSY_HAVE_SEM, RTONCESTATE_BUSY_CREATING_SEM)) 203 AssertReturn(ASMAtomicCmpXchgS32(&pOnce->iState, RTONCESTATE_DONE, RTONCESTATE_DONE_CREATING_SEM) 206 ASMAtomicWriteHandle(&pOnce->hEventMulti, NIL_RTSEMEVENTMULTI); 207 cRefs = ASMAtomicDecS32(&pOnce 289 RTOnceSlow(PRTONCE pOnce, PFNRTONCE pfnOnce, PFNRTONCECLEANUP pfnCleanUp, void *pvUser) argument 410 RTOnceReset(PRTONCE pOnce) argument [all...] |
/vbox/include/iprt/ |
H A D | once.h | 137 * @param pOnce Pointer to the execute once variable. 143 RTDECL(int) RTOnceSlow(PRTONCE pOnce, PFNRTONCE pfnOnce, FNRTONCECLEANUP pfnCleanUp, void *pvUser); 152 * @param pOnce Pointer to the execute once variable. 156 DECLINLINE(int) RTOnce(PRTONCE pOnce, PFNRTONCE pfnOnce, void *pvUser) argument 158 int32_t iState = ASMAtomicUoReadS32(&pOnce->iState); 162 return ASMAtomicUoReadS32(&pOnce->rc); 163 return RTOnceSlow(pOnce, pfnOnce, NULL, pvUser); 175 * @param pOnce Pointer to the execute once variable. 180 DECLINLINE(int) RTOnceEx(PRTONCE pOnce, PFNRTONCE pfnOnce, PFNRTONCECLEANUP pfnCleanUp, void *pvUser) argument 182 int32_t iState = ASMAtomicUoReadS32(&pOnce 199 RTDECL(void) RTOnceReset(PRTONCE pOnce); variable [all...] |
Completed in 43 milliseconds