40#ifndef READ_WRITE_LOCK_HPP_
41#define READ_WRITE_LOCK_HPP_
51#ifndef CPP_FREERTOS_NO_EXCEPTIONS
55#ifdef CPP_FREERTOS_NO_CPP_STRINGS
56#error "FreeRTOS-Addons require C++ Strings if you are using exceptions"
66#ifndef CPP_FREERTOS_NO_EXCEPTIONS
78 sprintf(
errorString,
"ReadWriteLock Constructor Failed");
85 virtual const char *
what()
const throw()
virtual const char * what() const
ReadWriteLockCreateException()
SemaphoreHandle_t ResourceLock
virtual void WriterLock()=0
virtual void ReaderUnlock()=0
virtual void WriterUnlock()=0
SemaphoreHandle_t ReadLock
virtual void ReaderLock()=0
virtual void WriterLock()
virtual void ReaderLock()
virtual void ReaderUnlock()
virtual void WriterUnlock()
ReadWriteLockPreferWriter()
SemaphoreHandle_t BlockReadersLock
virtual void ReaderUnlock()
virtual void ReaderLock()
SemaphoreHandle_t WriteLock
virtual ~ReadWriteLockPreferWriter()
virtual void WriterUnlock()
virtual void WriterLock()