explicit SemaphoreImpl(unsigned int value) : value_(value){};
~SemaphoreImpl() = default;
SemaphoreImpl(SemaphoreImpl const&) = delete;
SemaphoreImpl& operator=(SemaphoreImpl const&) = delete;
explicit SemaphoreImpl(unsigned int value) : value_(value){};
~SemaphoreImpl() = default;
SemaphoreImpl(SemaphoreImpl const&) = delete;
SemaphoreImpl& operator=(SemaphoreImpl const&) = delete;