Sign in
android
/
device
/
google
/
contexthub
/
9f112d847389c993c625ae8e6e4318ca036d9c16
/
.
/
firmware
/
src
/
trylock.c
blob: 3b528950557e89e8fb75df64c3d9ff0950e9b480 [
file
] [
log
] [
blame
]
#include
<trylock.h>
#include
<atomic.h>
void
trylockInit
(
struct
TryLock
*
lock
)
{
lock
->
lock
=
0
;
}
void
trylockRelease
(
struct
TryLock
*
lock
)
{
lock
->
lock
=
0
;
}
bool
trylockTryTake
(
struct
TryLock
*
lock
)
{
return
!
atomicXchgByte
(&
lock
->
lock
,
1
);
}