CyberEngineMkIII
Home
Contexts
Conventions
Classes
Files
Todo
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
Engine
Platform
System
CYBSemaphore.hpp
Go to the documentation of this file.
1
namespace
CYB {
3
namespace
Platform {
4
namespace
System {
6
class
Semaphore
:
private
Implementation::Semaphore
,
public
API::Semaphore
{
7
ENABLE_TEST_HOOKS
8
private
:
9
unsigned
long
long
FServiceCount
,
10
FWakeCount
,
11
FSleepCount
;
12
private
:
18
void
Lock
(
void
) noexcept;
24
void
Unlock
(
void
) noexcept;
25
31
void
EnterCV
(
void
) noexcept;
32
public:
39
Semaphore
();
41
~Semaphore();
42
44
void
SignalN
(const
unsigned
long
long
AN) noexcept final override;
46
void
SignalAll
(
void
) noexcept final override;
48
void
Wait
(
void
) noexcept final override;
49
};
50
};
51
};
52
};
CYB::Platform::System::Semaphore::FWakeCount
unsigned long long FWakeCount
The number of threads that will be woken.
Definition:
CYBSemaphore.hpp:9
CYB::Platform::System::Semaphore::Unlock
void Unlock(void) noexcept
Unlock the mutex associated with the CV.
Definition:
CYBWin32Semaphore.cpp:24
CYB::Platform::System::Semaphore::FSleepCount
unsigned long long FSleepCount
The number of threads currently asleep.
Definition:
CYBSemaphore.hpp:9
CYB::API::Semaphore
A reliable wait queue.
Definition:
Semaphore.hpp:9
CYB::Platform::System::Semaphore::Lock
void Lock(void) noexcept
Lock the mutex associated with the CV.
Definition:
CYBWin32Semaphore.cpp:20
CYB::Platform::System::Semaphore
A reliable wait queue.
Definition:
CYBSemaphore.hpp:6
CYB::Platform::System::Semaphore::SignalN
void SignalN(const unsigned long long AN) noexceptfinaloverride
Signal N waiters of this semaphore. Will not signal more than are currently waiting.
Definition:
CYBSemaphore.cpp:11
CYB::Platform::System::Implementation::Semaphore
The CS, CV pair handler.
Definition:
CYBWin32Semaphore.hpp:8
CYB::Platform::System::Semaphore::FServiceCount
unsigned long long FServiceCount
The number the next waiting thread will take.
Definition:
CYBSemaphore.hpp:9
CYB::Platform::System::Semaphore::Wait
void Wait(void) noexceptfinaloverride
Wait indefinitely for a signal from this semaphore. Will be placed last into the queue.
Definition:
CYBSemaphore.cpp:19
CYB::Platform::System::Semaphore::SignalAll
void SignalAll(void) noexceptfinaloverride
Signal all current waiters of this semaphore.
Definition:
CYBSemaphore.cpp:4
CYB::Platform::System::Semaphore::EnterCV
void EnterCV(void) noexcept
Enter the condition variable.
Definition:
CYBWin32Semaphore.cpp:28
Generated by
1.8.6