Lines Matching full:semaphore
94 class Semaphore;
234 // Factory method for creating platform dependent Semaphore.
235 // Please use delete to reclaim the storage for the returned Semaphore.
236 static Semaphore* CreateSemaphore(int count);
579 // Semaphore
581 // A semaphore object is a synchronization object that maintains a count. The
582 // count is decremented each time a thread completes a wait for the semaphore
583 // object and incremented each time a thread signals the semaphore. When the
584 // count reaches zero, threads waiting for the semaphore blocks until the
587 class Semaphore {
589 virtual ~Semaphore() {}
591 // Suspends the calling thread until the semaphore counter is non zero
592 // and then decrements the semaphore counter.
597 // counter is unchanged. Otherwise the semaphore counter is decremented and
601 // Increments the semaphore counter.
607 static Semaphore* Create() {
612 // POD Semaphore initialized lazily (i.e. the first time Pointer() is called).
614 // // The following semaphore starts at 0.
624 Semaphore, CreateSemaphoreTrait<InitialValue>,