Home
Information
Classes
Download
Usage
Mail List
Requirements
Links
FAQ
Tutorial
include
Mutex.h
1
#ifndef STK_MUTEX_H
2
#define STK_MUTEX_H
3
4
#include "Stk.h"
5
6
#if (defined(__OS_IRIX__) || defined(__OS_LINUX__) || defined(__OS_MACOSX__))
7
8
#include <pthread.h>
9
typedef
pthread_mutex_t MUTEX;
10
typedef
pthread_cond_t CONDITION;
11
12
#elif defined(__OS_WINDOWS__)
13
14
#include <windows.h>
15
#include <process.h>
16
typedef
CRITICAL_SECTION MUTEX;
17
typedef
HANDLE CONDITION;
18
19
#endif
20
21
namespace
stk
{
22
23
/***************************************************/
34
/***************************************************/
35
36
class
Mutex
:
public
Stk
37
{
38
public
:
40
Mutex
();
41
43
~Mutex
();
44
46
void
lock
(
void
);
47
49
void
unlock
(
void
);
50
52
56
void
wait
(
void
);
57
59
63
void
signal
(
void
);
64
65
protected
:
66
67
MUTEX mutex_;
68
CONDITION condition_;
69
70
};
71
72
}
// stk namespace
73
74
#endif
stk::Mutex
STK mutex class.
Definition
Mutex.h:37
stk::Mutex::~Mutex
~Mutex()
Class destructor.
stk::Mutex::Mutex
Mutex()
Default constructor.
stk::Mutex::signal
void signal(void)
Signal the condition variable.
stk::Mutex::unlock
void unlock(void)
Unlock the mutex.
stk::Mutex::lock
void lock(void)
Lock the mutex.
stk::Mutex::wait
void wait(void)
Wait indefinitely on the mutex condition variable.
stk::Stk
STK base class.
Definition
Stk.h:136
stk
The STK namespace.
Definition
ADSR.h:6
The Synthesis ToolKit in C++ (STK)
©1995--2023 Perry R. Cook and Gary P. Scavone. All Rights Reserved.