#include <sys/mman.h>
#include <stdio.h>
#include <string.h>
#define TASK_PRIO 99
#define TASK_MODE 0
#define TASK_STKSZ 0
RT_QUEUE q_desc;
RT_TASK task_desc;
void consumer (void *cookie)
{
ssize_t len;
void *msg;
int err;
if (err)
fail();
{
printf("received message> len=%d bytes, ptr=%p, s=%s\n",
len,msg,(const char *)msg);
}
if (len != -EIDRM)
fail();
}
int main (int argc, char *argv[])
{
static char *messages[] = { "hello", "world", NULL };
int n, len;
void *msg;
mlockall(MCL_CURRENT|MCL_FUTURE);
"MyTaskName",
TASK_STKSZ,
TASK_PRIO,
TASK_MODE);
if (!err)
for (n = 0; messages[n] != NULL; n++)
{
len = strlen(messages[n]) + 1;
if (!msg)
fail();
strcpy(msg,messages[n]);
}
}