博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mq_unlink
阅读量:4345 次
发布时间:2019-06-07

本文共 908 字,大约阅读时间需要 3 分钟。

NAME

mq_unlink - 销毁一个消息队列 (REALTIME)

SYNOPSIS

#include 
int mq_unlink(const char *name);

DESCRIPTION

函数 mq_unlink() 会从内核中删除名为name的消息队列.

如果该函数被调用了,但是仍然有进程已经打开了这个消息队列,那么这个消息队列的销毁会被推迟到所有的引用都被关闭时执行.

并且函数 mq_unlink() 不需要阻塞到所有的引用都被关闭为止,它会立即返回.

函数 mq_unlink()调用成功后, 如果在随后调用 mq_open() 时重用这个消息队列名字,效果就像这个名字的消息队列不存在,

如果没有设置O_CREAT标志,函数mq_open() 会返回失败,否则会创建一个新的消息队列.

PARAMETERS

name

参数 name 是一个指向消息队列名字的指针.

名字的形式是 "/somename",是一个以NULL结尾的字符串,字符串的最大长度为NAME_MAX。

消息队列名字的第一个字符必须是"/",并且之后的字符中不允许出现"/"

  

RETURN VALUE

如果函数执行成功, 函数返回0

如果函数执行失败,函数返回 -1 并且设置errno,errno的种别详见下面的ERRORS一节.

 

ERRORS

[EACCES]

没有权限删除指定的消息队列.

[ENOENT]

指定的消息队列不存在.

[ENAMETOOLONG]

参数 name 的长度超过系统定义的最大长度.

在不支持XSI系统中,name 的长度超过了 {_POSIX_PATH_MAX},在支持XSI系统中,name 的长度超过了 {_XOPEN_PATH_MAX};或者

在不支持XSI系统中,某一级路径的长度超过了 {

_POSIX_NAME_MAX},在支持XSI系统中,某一级路径的长度超过了 {
_XOPEN_NAME_MAX};

EXAMPLES

 

 

转载于:https://www.cnblogs.com/LubinLew/p/POSIX-mq_unlink.html

你可能感兴趣的文章
day7
查看>>
iphone移动端踩坑
查看>>
vs无法加载项目
查看>>
Beanutils基本用法
查看>>
玉伯的一道课后题题解(关于 IEEE 754 双精度浮点型精度损失)
查看>>
《BI那点儿事》数据流转换——百分比抽样、行抽样
查看>>
哈希(1) hash的基本知识回顾
查看>>
Leetcode 6——ZigZag Conversion
查看>>
dockerfile_nginx+PHP+mongo数据库_完美搭建
查看>>
Http协议的学习
查看>>
ActiveMQ学习笔记(1)----初识ActiveMQ
查看>>
Java与算法之(2) - 快速排序
查看>>
Windows之IOCP
查看>>
WebSocket & websockets
查看>>
openssl 升级
查看>>
ASP.NET MVC:通过 FileResult 向 浏览器 发送文件
查看>>
CVE-2010-2883Adobe Reader和Acrobat CoolType.dll栈缓冲区溢出漏洞分析
查看>>
使用正确的姿势跨域
查看>>
AccountManager教程
查看>>
Android学习笔记(十一)——从意图返回结果
查看>>