博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
unix编程——posix消息队列
阅读量:7017 次
发布时间:2019-06-28

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

两个简单的消息队列发送和接受的例子:

send.c:

#include 
#include
#include
#include
int main() {
mqd_t mqd; struct mq_attr attr; int flags; flags = O_RDWR | O_CREAT; mqd = mq_open("/temp.1234",flags,S_IRUSR|S_IWUSR|S_IROTH|S_IWOTH,NULL); mq_getattr(mqd,&attr); mq_send(mqd,"abc",3,0); mq_close(mqd); exit(0); }

recv.c

#include 
#include
#include
#include
int main() {
mqd_t mqd; struct mq_attr attr; char*buff; unsigned prio; ssize_t n; int flags; flags = O_RDWR | O_CREAT; mqd = mq_open("/temp.1234",flags,S_IRUSR|S_IWUSR|S_IROTH|S_IWOTH,NULL); mq_getattr(mqd,&attr); buff = malloc(attr.mq_msgsize); n = mq_receive(mqd,buff,attr.mq_msgsize,&prio); printf("%ld b, %s ,pri = %u\n",(long)n,buff,prio); mq_close(mqd); exit(0); }

linux下编译运行:

gcc -o send send.c -lrt

gcc -o recv recv.c -lrt

./send

./recv

输出:

3 b, abc ,pri = 0

转载于:https://www.cnblogs.com/confide/archive/2011/08/08/2131610.html

你可能感兴趣的文章
所有异常
查看>>
学UNITY的基础
查看>>
Spring-JDBC配置
查看>>
VC++ 之常见内存异常值
查看>>
文件权限及chmod使用方法
查看>>
log4net 自定义Layout日志字段
查看>>
学习Spring——依赖注入
查看>>
学习ASP.NET Core, 怎能不了解请求处理管道[5]: 中间件注册可以除了可以使用Startup之外,还可以选择StartupFilter...
查看>>
如何解决SQLServer占CPU100%
查看>>
备忘:aliyun maven mirror
查看>>
基于资源的权限系统-数据库设计
查看>>
Hadoop MapReduce编程 API入门系列之倒排索引(二十四)
查看>>
js-JavaScript高级程序设计学习笔记20
查看>>
Redis操作命令总结
查看>>
【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)
查看>>
Android ORM 框架之 greenDAO 使用心得
查看>>
11个审查Linux是否被入侵的方法
查看>>
.NET对象与Windows句柄(二):句柄分类和.NET句柄泄露的例子
查看>>
iOS SDWebImage的使用
查看>>
ORACLE 内部原理
查看>>