Lines Matching refs:cv
138 PyCOND_INIT(PyCOND_T *cv) in PyCOND_INIT() argument
144 cv->sem = CreateSemaphore(NULL, 0, 100000, NULL); in PyCOND_INIT()
145 if (cv->sem==NULL) in PyCOND_INIT()
147 cv->waiting = 0; in PyCOND_INIT()
152 PyCOND_FINI(PyCOND_T *cv) in PyCOND_FINI() argument
154 return CloseHandle(cv->sem) ? 0 : -1; in PyCOND_FINI()
161 _PyCOND_WAIT_MS(PyCOND_T *cv, PyMUTEX_T *cs, DWORD ms) in _PyCOND_WAIT_MS() argument
164 cv->waiting++; in _PyCOND_WAIT_MS()
170 wait = WaitForSingleObjectEx(cv->sem, ms, FALSE); in _PyCOND_WAIT_MS()
173 --cv->waiting; in _PyCOND_WAIT_MS()
192 PyCOND_WAIT(PyCOND_T *cv, PyMUTEX_T *cs) in PyCOND_WAIT() argument
194 int result = _PyCOND_WAIT_MS(cv, cs, INFINITE); in PyCOND_WAIT()
199 PyCOND_TIMEDWAIT(PyCOND_T *cv, PyMUTEX_T *cs, long long us) in PyCOND_TIMEDWAIT() argument
201 return _PyCOND_WAIT_MS(cv, cs, (DWORD)(us/1000)); in PyCOND_TIMEDWAIT()
205 PyCOND_SIGNAL(PyCOND_T *cv) in PyCOND_SIGNAL() argument
211 if (cv->waiting > 0) { in PyCOND_SIGNAL()
216 cv->waiting--; in PyCOND_SIGNAL()
217 return ReleaseSemaphore(cv->sem, 1, NULL) ? 0 : -1; in PyCOND_SIGNAL()
223 PyCOND_BROADCAST(PyCOND_T *cv) in PyCOND_BROADCAST() argument
225 int waiting = cv->waiting; in PyCOND_BROADCAST()
227 cv->waiting = 0; in PyCOND_BROADCAST()
228 return ReleaseSemaphore(cv->sem, waiting, NULL) ? 0 : -1; in PyCOND_BROADCAST()
264 PyCOND_INIT(PyCOND_T *cv) in PyCOND_INIT() argument
266 InitializeConditionVariable(cv); in PyCOND_INIT()
270 PyCOND_FINI(PyCOND_T *cv) in PyCOND_FINI() argument
276 PyCOND_WAIT(PyCOND_T *cv, PyMUTEX_T *cs) in PyCOND_WAIT() argument
278 return SleepConditionVariableSRW(cv, cs, INFINITE, 0) ? 0 : -1; in PyCOND_WAIT()
285 PyCOND_TIMEDWAIT(PyCOND_T *cv, PyMUTEX_T *cs, long long us) in PyCOND_TIMEDWAIT() argument
287 return SleepConditionVariableSRW(cv, cs, (DWORD)(us/1000), 0) ? 2 : -1; in PyCOND_TIMEDWAIT()
291 PyCOND_SIGNAL(PyCOND_T *cv) in PyCOND_SIGNAL() argument
293 WakeConditionVariable(cv); in PyCOND_SIGNAL()
298 PyCOND_BROADCAST(PyCOND_T *cv) in PyCOND_BROADCAST() argument
300 WakeAllConditionVariable(cv); in PyCOND_BROADCAST()