BitShares-Core
7.0.2
BitShares blockchain node software and command-line wallet software
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
z
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
z
Variables
a
c
d
e
g
h
l
n
o
t
w
Typedefs
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
z
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
w
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Typedefs
a
b
c
d
e
f
h
i
l
m
n
o
p
r
s
t
v
Enumerations
Enumerator
a
b
c
d
e
f
g
i
k
l
m
n
o
p
r
s
t
u
v
w
Related Functions
a
b
c
d
e
f
g
h
m
n
o
p
s
t
u
v
w
y
Files
File List
File Members
All
_
a
b
c
d
e
f
g
i
l
m
n
p
r
s
t
u
v
w
Functions
Variables
Typedefs
Macros
_
a
b
c
d
e
f
g
i
l
m
n
p
r
s
t
u
v
w
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
libraries
fc
include
fc
thread
mutex.hpp
Go to the documentation of this file.
1
#pragma once
2
#include <
fc/time.hpp
>
3
#include <
fc/thread/spin_yield_lock.hpp
>
4
5
namespace
fc
{
6
class
microseconds;
7
class
time_point;
8
struct
context;
9
91
class
mutex
{
92
public
:
93
mutex
();
94
~mutex
();
95
96
bool
try_lock
();
97
bool
try_lock_for
(
const
microseconds
& rel_time );
98
bool
try_lock_until
(
const
time_point
& abs_time );
99
void
lock
();
100
void
unlock
();
101
102
private
:
103
fc::spin_yield_lock
m_blist_lock;
104
fc::context
* m_blist;
105
unsigned
recursive_lock_count;
106
};
107
108
}
// namespace fc
109
fc::mutex::try_lock
bool try_lock()
Definition:
mutex.cpp:83
fc::mutex
mutex
Definition:
mutex.hpp:91
fc::mutex::mutex
mutex()
Definition:
mutex.cpp:10
fc
Definition:
api.hpp:15
spin_yield_lock.hpp
fc::mutex::lock
void lock()
Definition:
mutex.cpp:136
fc::context
Definition:
context.hpp:47
fc::mutex::try_lock_for
bool try_lock_for(const microseconds &rel_time)
fc::spin_yield_lock
modified spin-lock that yields on failure, but becomes a 'spin lock' if there are no other tasks to y...
Definition:
spin_yield_lock.hpp:20
fc::microseconds
Definition:
time.hpp:12
fc::time_point
Definition:
time.hpp:44
fc::mutex::try_lock_until
bool try_lock_until(const time_point &abs_time)
Definition:
mutex.cpp:101
fc::mutex::~mutex
~mutex()
Definition:
mutex.cpp:15
time.hpp
fc::mutex::unlock
void unlock()
Definition:
mutex.cpp:194
Generated on Fri Dec 15 2023 06:12:42 for BitShares-Core by
1.8.17