Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
src
icl_core
src
icl_core_thread
ScopedMutexLock.cpp
Go to the documentation of this file.
1
// this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*-
2
3
// -- BEGIN LICENSE BLOCK ----------------------------------------------
4
// This file is part of FZIs ic_workspace.
5
//
6
// This program is free software licensed under the LGPL
7
// (GNU LESSER GENERAL PUBLIC LICENSE Version 3).
8
// You can find a copy of this license in LICENSE folder in the top
9
// directory of the source code.
10
//
11
// © Copyright 2016 FZI Forschungszentrum Informatik, Karlsruhe, Germany
12
//
13
// -- END LICENSE BLOCK ------------------------------------------------
14
15
//----------------------------------------------------------------------
22
//----------------------------------------------------------------------
23
#include "
icl_core_thread/ScopedMutexLock.h
"
24
25
#include "
icl_core_thread/Mutex.h
"
26
27
namespace
icl_core
{
28
namespace
thread {
29
30
ScopedMutexLock::ScopedMutexLock
(
Mutex
& mutex,
bool
force)
31
: m_mutex(mutex), m_is_locked(false)
32
{
33
do
34
{
35
m_is_locked
=
m_mutex
.
lock
();
36
}
37
while
(force && !
m_is_locked
);
38
}
39
40
ScopedMutexLock::~ScopedMutexLock
()
41
{
42
if
(
isLocked
())
43
{
44
m_mutex
.
unlock
();
45
}
46
}
47
49
#ifdef _IC_BUILDER_DEPRECATED_STYLE_
50
54
bool
ScopedMutexLock::IsLocked()
const
55
{
56
return
isLocked
();
57
}
58
59
#endif
60
62
}
63
}
ScopedMutexLock.h
Contains icl_core::thread::ScopedMutexLock.
icl_core::thread::ScopedMutexLock::m_is_locked
bool m_is_locked
Definition:
ScopedMutexLock.h:83
icl_core::thread::ScopedMutexLock::isLocked
bool isLocked() const
Definition:
ScopedMutexLock.h:64
icl_core::thread::ScopedMutexLock::m_mutex
Mutex & m_mutex
Definition:
ScopedMutexLock.h:82
icl_core::thread::ScopedMutexLock::ScopedMutexLock
ScopedMutexLock(Mutex &mutex, bool force=true)
Definition:
ScopedMutexLock.cpp:30
icl_core::thread::ScopedMutexLock::~ScopedMutexLock
~ScopedMutexLock()
Definition:
ScopedMutexLock.cpp:40
icl_core::thread::Mutex
Definition:
Mutex.h:47
Mutex.h
Contains icl_core::thread::Mutex.
icl_core::thread::Mutex::lock
bool lock()
Definition:
Mutex.cpp:92
icl_core
Definition:
Array2D.h:30
icl_core::thread::Mutex::unlock
void unlock()
Definition:
Mutex.cpp:124
fzi_icl_core
Author(s):
autogenerated on Mon Jun 10 2019 13:17:58