如何等到mqueue创建可用?

时间:2018-01-18 23:16:50

标签: c++ c linux unix mqueue

我必须编写大量使用mqueue.h队列的程序。问题是它很容易达到/proc/sys/fs/mqueue/queues_max限制,我无法改变。是否有可能等到新队列的创建没有硬旋转?我的意思是

do {
    desc = mq_open(name, O_CREAT | O_RDONLY, 0666, NULL);
    if(errno == 24) // "Too many open files"
        mq_wait_for_free(); // I ask for this
    else {
        perror("creation of mqueue");
        exit(-1);
    }
} while (desc < 0);

0 个答案:

没有答案