aboutsummaryrefslogtreecommitdiff
path: root/src/rt/sync/condition_variable.h
blob: f336a7f2a6e135938a97136500794045b7a16573 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#ifndef CONDITION_VARIABLE_H
#define CONDITION_VARIABLE_H

class condition_variable {
#if defined(__WIN32__)
    HANDLE _event;
#else
    pthread_cond_t _cond;
    pthread_mutex_t _mutex;
#endif
public:
    condition_variable();
    virtual ~condition_variable();

    void wait();
    void timed_wait(size_t timeout_in_ns);
    void signal();
};

#endif /* CONDITION_VARIABLE_H */