. .

Tag: message queue

0

C: Interprozesskommunikation über Message Queues

C Code

In diesem Beispiel zeige ich kurz, wie Message Queues zum Austausch von Nachrichten zwischen zwei unterschiedlichen Prozessen verwendet werden können. Hierzu einmal das Headerfile msg_queue.h: #ifndef _PRJ_MSG_QUEUE_H_ #define _PRJ_MSG_QUEUE_H_ #include <stdlib.h> #include <stdio.h> #include <string.h> #define QUEUE_KEY 2048 #define STOP_COMMAND "exit" /* type this to stop writting to message queue */ typedef struct _userOptions { size_t write; size_t read; } userOptions; typedef struct _msgBuffer { long type; char text[2048]; } msgBuffer; void prj_usage(); userOptions prj_initUserOptions(userOptions options); int prj_parseArgs(int *argc, char **argv, userOptions *options); int prj_startQueue(key_t const key); void prj_stopQueue(int msqid); int prj_readFromQueue(int msqid); int prj_writeToQueue(int msqid); int main(int argc, char