5#ifndef V8_BASE_PLATFORM_SEMAPHORE_H_
6#define V8_BASE_PLATFORM_SEMAPHORE_H_
15#include <dispatch/dispatch.h>
17#include "zos-semaphore.h"
23#include "starboard/common/semaphore.h"
61 using NativeHandle = dispatch_semaphore_t;
63 using NativeHandle = sem_t;
65 using NativeHandle =
HANDLE;
67 using NativeHandle = starboard::Semaphore;
71 return native_handle_;
74 return native_handle_;
104#define LAZY_SEMAPHORE_INITIALIZER LAZY_DYNAMIC_INSTANCE_INITIALIZER
NativeHandle & native_handle()
NativeHandle native_handle_
bool WaitFor(const TimeDelta &rel_time) V8_WARN_UNUSED_RESULT
const NativeHandle & native_handle() const
Semaphore & operator=(const Semaphore &)=delete
Semaphore(const Semaphore &)=delete
static Semaphore * Create()
#define V8_WARN_UNUSED_RESULT