система - SUSE 10.0
вызываемая функция - mq_open
если при открытии использовать mq_attr, то при mq_attr.maxmsg=10 mq_attr.msgsize=256
очередь создается, а при mq_attr.maxmsg=50 mq_attr.msgsize=256 - ошибка "Invalid argument".
Есть ли общий способ узанть об ограничениях (существуют, какие), для портабельности?
>система - SUSE 10.0
>вызываемая функция - mq_open
>если при открытии использовать mq_attr, то при mq_attr.maxmsg=10 mq_attr.msgsize=256
>очередь создается, а при mq_attr.maxmsg=50 mq_attr.msgsize=256 - ошибка "Invalid argument".
>Есть ли общий способ узанть об ограничениях (существуют, какие), для портабельности?
>>Есть ли общий способ узанть об ограничениях (существуют, какие), для портабельности?
>
>
>http://www.die.net/doc/linux/man/man2/setrlimit.2.htmlСпасибо. То что надо.
>>система - SUSE 10.0
>>вызываемая функция - mq_open
>>если при открытии использовать mq_attr, то при mq_attr.maxmsg=10 mq_attr.msgsize=256
>>очередь создается, а при mq_attr.maxmsg=50 mq_attr.msgsize=256 - ошибка "Invalid argument".
>>Есть ли общий способ узанть об ограничениях (существуют, какие), для портабельности?Рано радовался. getrlimit возвращает 819200( в двух полях одно и тоже значение), несложный подсчет показывает, что при размере сообщения 256 байт, кол-во сообщений может быть 819200/(256+4)~3150 штук. "А у меня Мандриан". Что делать?
В общем надо, смотреть /proc/sys/fs/mqueue/*, там все есть.