The exchange of data between different tasks can be carried out with the functions (Message Passing) of the CAA_MemBlockManager ( MBM.MsgSend , MBM.MsgReceive ). Alternatively the jobs of different tasks on shared memory can be coordinated with the following functions or function blocks.
These functions are to protect short code sections against simultaneous access of other IEC tasks (e.g. the consistent reallocation of pointers). This function uses a central semaphore and is based on the macros CAA_ENTER_LOCK and CAA_LEAVE_LOCK in the runtime system. As a consequence, a caller is really blocked. These functions are only meant for library developers and therefore have the attribute hide .