Lines Matching defs:fSemaphore
25 semaphore_t fSemaphore;
28 semaphore_create(mach_task_self(), &fSemaphore, SYNC_POLICY_LIFO, 0/*initial count*/);
30 ~OSSemaphore() { semaphore_destroy(mach_task_self(), fSemaphore); }
34 AnnotateHappensBefore(__FILE__, __LINE__, &fSemaphore);
35 semaphore_signal(fSemaphore);
39 semaphore_wait(fSemaphore);
40 AnnotateHappensAfter(__FILE__, __LINE__, &fSemaphore);
45 HANDLE fSemaphore;
48 fSemaphore = CreateSemaphore(nullptr /*security attributes, optional*/,
53 ~OSSemaphore() { CloseHandle(fSemaphore); }
56 ReleaseSemaphore(fSemaphore, n, nullptr/*returns previous count, optional*/);
58 void wait() { WaitForSingleObject(fSemaphore, INFINITE/*timeout in ms*/); }
65 sem_t fSemaphore;
67 OSSemaphore() { sem_init(&fSemaphore, 0/*cross process?*/, 0/*initial count*/); }
68 ~OSSemaphore() { sem_destroy(&fSemaphore); }
70 void signal(int n) { while (n --> 0) { sem_post(&fSemaphore); } }
73 while(sem_wait(&fSemaphore) == -1 && errno == EINTR);