I forgor (closing the pipes) ...
This commit is contained in:
+7
-1
@@ -13,8 +13,9 @@ int mq_read(mq_response_t* response_buf) {
|
||||
char abs_path[128];
|
||||
snprintf(abs_path, sizeof(abs_path), "/dev/mqueue%s", path);
|
||||
|
||||
// wait untill file exitst
|
||||
while (access(abs_path, F_OK) == -1) {
|
||||
usleep(100);
|
||||
usleep(200);
|
||||
}
|
||||
|
||||
mqd_t queue = mq_open(path, O_RDONLY);
|
||||
@@ -24,6 +25,9 @@ int mq_read(mq_response_t* response_buf) {
|
||||
}
|
||||
|
||||
int err = mq_receive(queue,(char*)response_buf, sizeof(mq_response_t), 0);
|
||||
|
||||
mq_close(queue);
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
@@ -35,5 +39,7 @@ int mq_write(mq_message_t message) {
|
||||
}
|
||||
|
||||
int err = mq_send(queue, (const char*)&message, sizeof(mq_message_t), 0);
|
||||
|
||||
mq_close(queue);
|
||||
return err;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user