Peano
Loading...
Searching...
No Matches
RecursiveLock.h
Go to the documentation of this file.
1
// This file is part of the Peano project. For conditions of distribution and
2
// use, please see the copyright notice at www.peano-framework.org
3
#pragma once
4
5
namespace
tarch
{
6
namespace
multicore {
7
class
RecursiveSemaphore;
8
class
RecursiveLock;
9
}
10
}
11
17
class
tarch::multicore::RecursiveLock
{
18
private
:
19
RecursiveSemaphore
&
_semaphore
;
20
bool
_lockIsAquired
;
21
22
public
:
23
RecursiveLock
(
tarch::multicore::RecursiveSemaphore
& semaphore,
bool
aquireLockImmediately =
true
);
24
~RecursiveLock
();
25
26
bool
tryLock
();
27
bool
isLocked
()
const
;
28
void
lock
();
29
void
free
();
30
};
tarch::multicore::RecursiveLock
Create a lock around a boolean semaphore region.
Definition
RecursiveLock.h:17
tarch::multicore::RecursiveLock::_semaphore
RecursiveSemaphore & _semaphore
Definition
RecursiveLock.h:19
tarch::multicore::RecursiveLock::free
void free()
Definition
RecursiveLock.cpp:44
tarch::multicore::RecursiveLock::lock
void lock()
Definition
RecursiveLock.cpp:37
tarch::multicore::RecursiveLock::_lockIsAquired
bool _lockIsAquired
Definition
RecursiveLock.h:20
tarch::multicore::RecursiveLock::RecursiveLock
RecursiveLock(tarch::multicore::RecursiveSemaphore &semaphore, bool aquireLockImmediately=true)
Definition
RecursiveLock.cpp:6
tarch::multicore::RecursiveLock::~RecursiveLock
~RecursiveLock()
Definition
RecursiveLock.cpp:15
tarch::multicore::RecursiveLock::tryLock
bool tryLock()
Definition
RecursiveLock.cpp:22
tarch::multicore::RecursiveLock::isLocked
bool isLocked() const
Definition
RecursiveLock.cpp:32
tarch::multicore::RecursiveSemaphore
Recursive Semaphore.
Definition
RecursiveSemaphore.h:30
tarch
Have to include this header, as I need access to the SYCL_EXTERNAL keyword.
Definition
accelerator.h:19
src
tarch
multicore
RecursiveLock.h
Generated on Fri Apr 25 2025 15:00:18 for Peano by
1.10.0