![]() |
This is Unofficial EPICS BASE Doxygen Site
|
#include <new>
#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "epicsStdio.h"
#include "epicsThread.h"
#include "valgrind/valgrind.h"
#include "ellLib.h"
#include "errlog.h"
#include "epicsMutex.h"
Go to the source code of this file.
Classes | |
struct | epicsMutexParm |
class | epicsMutex::mutexCreateFailed |
class | epicsMutex::invalidMutex |
Functions | |
epicsMutexId epicsStdCall | epicsMutexOsiCreate (const char *pFileName, int lineno) |
Internal API, used by epicsMutexCreate(). More... | |
epicsMutexId epicsStdCall | epicsMutexOsiMustCreate (const char *pFileName, int lineno) |
Internal API, used by epicsMutexMustCreate(). More... | |
void epicsStdCall | epicsMutexDestroy (epicsMutexId pmutexNode) |
Destroy an epicsMutex semaphore. More... | |
void epicsStdCall | epicsMutexUnlock (epicsMutexId pmutexNode) |
Release the semaphore. More... | |
epicsMutexLockStatus epicsStdCall | epicsMutexLock (epicsMutexId pmutexNode) |
Claim the semaphore, waiting until it's free if currently owned owned by a different thread. More... | |
epicsMutexLockStatus epicsStdCall | epicsMutexTryLock (epicsMutexId pmutexNode) |
Similar to epicsMutexLock() except that the call returns immediately, with the return status indicating if the semaphore is currently owned by this thread or another thread. More... | |
void | epicsMutexCleanup (void) |
void epicsStdCall | epicsMutexShow (epicsMutexId pmutexNode, unsigned int level) |
Display information about the semaphore. More... | |
void epicsStdCall | epicsMutexShowAll (int onlyLocked, unsigned int level) |
Display information about all epicsMutex semaphores. More... | |
void | epicsDeadlockDetectMutexInitFunc (void *) |
void epicsDeadlockDetectMutexInitFunc | ( | void * | ) |
Definition at line 308 of file epicsMutex.cpp.
void epicsMutexCleanup | ( | void | ) |
Definition at line 176 of file epicsMutex.cpp.
void epicsStdCall epicsMutexDestroy | ( | epicsMutexId | id | ) |
Destroy an epicsMutex semaphore.
id | The mutex identifier. |
Definition at line 127 of file epicsMutex.cpp.
epicsMutexLockStatus epicsStdCall epicsMutexLock | ( | epicsMutexId | id | ) |
Claim the semaphore, waiting until it's free if currently owned owned by a different thread.
This call blocks until the calling thread can get exclusive access to the semaphore.
id | The mutex identifier. |
Definition at line 145 of file epicsMutex.cpp.
epicsMutexId epicsStdCall epicsMutexOsiCreate | ( | const char * | pFileName, |
int | lineno | ||
) |
Internal API, used by epicsMutexCreate().
Definition at line 85 of file epicsMutex.cpp.
epicsMutexId epicsStdCall epicsMutexOsiMustCreate | ( | const char * | pFileName, |
int | lineno | ||
) |
Internal API, used by epicsMutexMustCreate().
Definition at line 119 of file epicsMutex.cpp.
void epicsStdCall epicsMutexShow | ( | epicsMutexId | id, |
unsigned int | level | ||
) |
Display information about the semaphore.
id | The mutex identifier. |
level | Desired information level to report |
Definition at line 191 of file epicsMutex.cpp.
void epicsStdCall epicsMutexShowAll | ( | int | onlyLocked, |
unsigned int | level | ||
) |
Display information about all epicsMutex semaphores.
onlyLocked | Non-zero to show only locked semaphores. |
level | Desired information level to report |
Definition at line 217 of file epicsMutex.cpp.
epicsMutexLockStatus epicsStdCall epicsMutexTryLock | ( | epicsMutexId | id | ) |
Similar to epicsMutexLock() except that the call returns immediately, with the return status indicating if the semaphore is currently owned by this thread or another thread.
epicsMutexLockOK
if the resource is now owned by the caller. epicsMutexLockTimeout
if some other thread owns the resource. Definition at line 158 of file epicsMutex.cpp.
void epicsStdCall epicsMutexUnlock | ( | epicsMutexId | id | ) |
Release the semaphore.
id | The mutex identifier. |
Definition at line 140 of file epicsMutex.cpp.