28 lines
518 B
C
28 lines
518 B
C
|
#pragma once
|
||
|
#include "utils/NonCopyable.h"
|
||
|
#include <stdint.h>
|
||
|
|
||
|
namespace il2cpp
|
||
|
{
|
||
|
namespace os
|
||
|
{
|
||
|
class FastMutex;
|
||
|
class ConditionVariableImpl;
|
||
|
|
||
|
class ConditionVariable : public il2cpp::utils::NonCopyable
|
||
|
{
|
||
|
public:
|
||
|
ConditionVariable();
|
||
|
~ConditionVariable();
|
||
|
|
||
|
int Wait(FastMutex* lock);
|
||
|
int TimedWait(FastMutex* lock, uint32_t timeout_ms);
|
||
|
void Broadcast();
|
||
|
void Signal();
|
||
|
|
||
|
private:
|
||
|
ConditionVariableImpl* m_ConditionVariable;
|
||
|
};
|
||
|
}
|
||
|
}
|