mq_getattr

Autres langues

Langue: ja

Autres versions - même langue

Version: 2006-02-25 (openSuse - 09/10/07)

Autres sections - même nom

Section: 3 (Bibliothèques de fonctions)

̾Á°

mq_getattr, mq_setattr - ¥á¥Ã¥»¡¼¥¸¥­¥å¡¼¤Î°À­¤òÀßÄê/¼èÆÀ¤¹¤ë

½ñ¼°


#include <mqueue.h>



mqd_t mq_getattr(mqd_t mqdes, struct mq_attr *attr);

mqd_t mq_setattr(mqd_t mqdes, struct mq_attr *newattr,

                 struct mq_attr *oldattr);

ÀâÌÀ

mq_getattr() ¤È mq_setattr() ¤Ï¡¢µ­½Ò»Ò mqdes ¤Ç»²¾È¤µ¤ì¤ë¥á¥Ã¥»¡¼¥¸¥­¥å¡¼¤Î°À­¤Î¼èÆÀ¤ÈÊѹ¹¤ò¤½¤ì¤¾¤ì¹Ô¤¦¡£

mq_getattr() ¤Ï¡¢ attr ¤¬»Ø¤¹¥Ð¥Ã¥Õ¥¡¤Ë mq_attr ¹½Â¤ÂΤò³ÊǼ¤·¤ÆÊÖ¤¹¡£¤³¤Î¹½Â¤ÂΤϰʲ¼¤Î¤è¤¦¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë:




struct mq_attr {

    long mq_flags;       /* ¥Õ¥é¥°: 0 ¤« O_NONBLOCK */

    long mq_maxmsg;      /* ¥­¥å¡¼¤ÎºÇÂç¥á¥Ã¥»¡¼¥¸¿ô */

    long mq_msgsize;     /* ºÇÂç¥á¥Ã¥»¡¼¥¸¥µ¥¤¥º (¥Ð¥¤¥Èñ°Ì) */

    long mq_curmsgs;     /* ¥­¥å¡¼¤Ë¸½ºßÆþ¤Ã¤Æ¤¤¤ë¥á¥Ã¥»¡¼¥¸¿ô */

};

mq_flags ¥Õ¥£¡¼¥ë¥É¤Ë¤Ï¡¢¥ª¡¼¥×¥ó¥á¥Ã¥»¡¼¥¸¥­¥å¡¼µ­½Ò (open message queue description) ¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤Æ¤¤¤ë¥Õ¥é¥°¤¬³ÊǼ¤µ¤ì¤ë¡£ ¤³¤Î¥Õ¥£¡¼¥ë¥É¤Ï mq_open(3) ¤Ç¥­¥å¡¼¤¬ºîÀ®¤µ¤ì¤ëºÝ¤Ë½é´ü²½¤µ¤ì¤ë¡£ ¤³¤Î¥Õ¥£¡¼¥ë¥É¤Ë¸½¤ì¤ë¥Õ¥é¥°¤Ï O_NONBLOCK ¤À¤±¤Ç¤¢¤ë¡£

mq_maxmsg ¤È mq_msgsize ¥Õ¥£¡¼¥ë¥É¤Ï mq_open(3) ¤Ç¥á¥Ã¥»¡¼¥¸¥­¥å¡¼¤¬ºîÀ®¤µ¤ì¤ëºÝ¤Ë¥»¥Ã¥È¤µ¤ì¤ë¡£ mq_maxmsg ¥Õ¥£¡¼¥ë¥É¤Ï¡¢ mq_send(3) ¤ò»È¤Ã¤Æ¥­¥å¡¼¤ËÆþ¤ì¤ë¤³¤È¤¬¤Ç¤­¤ë¥á¥Ã¥»¡¼¥¸¿ô¤Î¾å¸Â¤Ç¤¢¤ë¡£ mq_msgsize ¥Õ¥£¡¼¥ë¥É¤Ï¡¢¥­¥å¡¼¤ËÆþ¤ì¤ë¤³¤È¤¬¤Ç¤­¤ë¥á¥Ã¥»¡¼¥¸¤Î ¾å¸Â¥µ¥¤¥º¤Ç¤¢¤ë¡£ ¤³¤ì¤é¤Î¥Õ¥£¡¼¥ë¥É¤Ï¤É¤Á¤é¤â 0 ¤è¤êÂ礭¤ÊÃͤǤʤ±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£ ¤³¤ì¤é¤Î¥Õ¥£¡¼¥ë¥É¤ËÀßÄê¤Ç¤­¤ëÃͤξå¸Â¤Ï /proc ¥Õ¥¡¥¤¥ë¤Ë¤è¤ê·è¤Þ¤ë¡£ /proc ¥Õ¥¡¥¤¥ë¤Î¾ÜºÙ¤Ï mq_open(3) ¤ËÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¡£

mq_curmsgs ¥Õ¥£¡¼¥ë¥É¤Ï¥­¥å¡¼¤Ë¸½ºß³ÊǼ¤µ¤ì¤Æ¤¤¤ë¥á¥Ã¥»¡¼¥¸¿ô¤òÊÖ¤¹¡£

mq_setattr() ¤Ï¡¢ newattr ¤¬»Ø¤¹ mq_attr ¹½Â¤ÂΤÇÍ¿¤¨¤é¤ì¤¿¾ðÊó¤ò»È¤Ã¤Æ¡¢¥á¥Ã¥»¡¼¥¸¥­¥å¡¼¤Î°À­¤òÀßÄꤹ¤ë¡£ Êѹ¹¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë°À­¤Ï¡¢ mq_flags ¤Î O_NONBLOCK ¥Õ¥é¥°¤ÎÀßÄê¤À¤±¤Ç¤¢¤ë¡£ newattr ¤Î¾¤Î¥Õ¥£¡¼¥ë¥É¤Ï̵»ë¤µ¤ì¤ë¡£ oldattr ¥Õ¥£¡¼¥ë¥É¤¬ NULL °Ê³°¤Î¾ì¹ç¡¢ mq_getattr() ¤¬ÊÖ¤¹¤Î¤ÈƱ¤¸¾ðÊó¤ò³ÊǼ¤·¤¿ mq_attr ¹½Â¤ÂΤò oldattr ¤¬»Ø¤¹¥Ð¥Ã¥Õ¥¡¤ËÆþ¤ì¤ÆÊÖ¤¹¡£

ÊÖ¤êÃÍ

À®¸ù¤¹¤ë¤È¡¢ mq_getattr () ¤È mq_setattr () ¤Ï 0 ¤òÊÖ¤¹¡£¥¨¥é¡¼¤Î¾ì¹ç¡¢-1 ¤òÊÖ¤·¡¢ errno ¤Ë¥¨¥é¡¼¤ò¼¨¤¹ÃͤòÀßÄꤹ¤ë¡£

¥¨¥é¡¼

EBADF
mqdes ¤Ç»ØÄꤵ¤ì¤¿µ­½Ò»Ò¤¬ÉÔÀµ¤Ç¤¢¤ë¡£
EINVAL
newattr->mq_flags ¤Ë O_NONBLOCK °Ê³°¤Î¥Ó¥Ã¥È¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤¿¡£

½àµò

POSIX.1-2001.

´ØÏ¢¹àÌÜ

mq_close(3), mq_notify(3), mq_open(3), mq_receive(3), mq_send(3), mq_unlink(3), mq_overview(7)