当前位置:  技术问答>linux和unix

mq_open消息队列的问题。

    来源: 互联网  发布时间:2015-08-02

    本文导语:  利用mq_open创建消息队列,每次返回的errno = 22:Invalid argument 为什么呢?编译都通过了! 代码如下:     struct mq_attr _MsgQueueAttr;     memset((void *)&_MsgQueueAttr, 0, sizeof(struct mq_attr));     _MsgQueueAttr.mq_flags   = O...

利用mq_open创建消息队列,每次返回的errno = 22:Invalid argument 为什么呢?编译都通过了!
代码如下:
    struct mq_attr _MsgQueueAttr;
    memset((void *)&_MsgQueueAttr, 0, sizeof(struct mq_attr));
    _MsgQueueAttr.mq_flags   = O_NONBLOCK;
    _MsgQueueAttr.mq_maxmsg  = MAX_MESSAGE_COUNT;
    _MsgQueueAttr.mq_msgsize = MAX_MESSAGE_LENGTH;

    mqd_t _hMessageQueue = MESSAGE_QUEUE_ERROR;
    _hMessageQueue = mq_open("temp.1234", 
                             O_CREAT | O_RDWR | O_TRUNC, 
                             S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH,
                             NULL);
    if( MESSAGE_QUEUE_ERROR == _hMessageQueue)
    {
        printf("create queue failed.nr");
        printf("%d", errno);
        return -1;
    }

    mq_close(_hMessageQueue);

|
你这用的是哪个MQ哦?没头没脑的

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 为什么在HP_UX 11.00下不能使用mq_open()


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3