libmsgque官方主页
libmsgque
消息队列(MESSAGE QUEUE)库项目简析
注: 本文如果你已经有linux开发环境
请确保你使用本库时是tag版本号。
target=libmsgque-1.0
本项目採用 GPL 授权协议,欢迎大家在这个基础上进行改进,并与大家分享,为开源事业贡献一点点力量。
以下将简单的解析下项目:
一、项目的文件夹结构
根文件夹
|-- src
`-- test
1、src文件夹
src文件夹用于存放项目的包及java源代码文件。
以下是src文件夹的文件:
src
|-- msgque.c
`-- msgque.h
- msgque.c —库中的主文件,定义函数
- msgque.h —库中的公共头文件,声明函数和结构体等
2、test文件夹
test文件夹用于存放測试库的套件程序。
以下是test文件夹里的文件:
test
|-- recv-test.c
'-- send-test.c
'-- recv-timeout.c
'-- send-timeout.c
- recv-test.c —消息队列接收測试程序, 与以下的程序配合使用
- send-test.c —消息队列发送測试程序, 与上面的程序配合使用
- recv-timeout.c —消息队列接收超时測试程序, 与以下的程序配合使用
- send-timeout.c —消息队列发送測试程序, 与上面的程序配合使用
二、编译流程
1) 下载源代码
$ git clone https://git.oschina.net/fulinux/libmsgque.git
2) 进入libmsgque文件夹中
$ cd libmsgque
3) 查看tag版本号
$ git tag
4) 选择最新的tag
$ git checkout vx.x.x
注上面命令行中的"x"代表最新的tag版本号中的版本号号码
5) 配置选项, 检測环境、依赖关系等,然后编译
$ ./configure && make
注: 当然你能够依据实际须要,为configure加入选项,比如加上--enable-static选项以使能静态库编译选项
三、測试库套件使用
1) 进入test文件夹
$ cd test
**2) 在一个终端中执行接收函数
$ ./recv-test
**3) 在还有一个终端中执行发送函数
$ ./send-test
四、libmsgque库主页以及邮件列表
库主页用于具体说明库的相关内容,大家亦能够在issues和博客以下反馈你使用过程中所遇到的问题和想法。希望大家能积极的改进该库,并在git@oschina上发起合并请求,如果确有改进,我会将其合并到master分支上来。当然你首先要是这个站点的用户,而且须要fork该库项目。
你也能够直接通过邮件的方式将问题和想法发给我。
1)库主页
http://blog.csdn.net/fulinus/article/details/38947603
2)邮件列表
E-mail: fulinux@sina.com
author: fulinux
changlog:
1、新增接收超时函数;
代码:https://git.oschina.net/fulinux/libmsgque
libmsgque官方主页的更多相关文章
- 音视频下载Chrome插件 官方主页
2019年3月20日前的旧版有不能下载的情况,请使用下面的新版 音视频下载是个点击图标后就能下载网页里正在播放的音视频文件的软件 下载:官方下载 百度网盘 Chr ...
- libcanbus官方主页
libcanbus canbus(CAN BUS V2.0 B)扩展格式库项目简析 注: 本文如果你已经有linux开发环境 请确保你使用本库时是tag版本号. 该库遵循的协议是SAE J1939-2 ...
- [python]python官方原版编码规范路径
1.进入python官方主页:https://www.python.org/ 2.按如下图进入PEP Index 3.选择第8个,即为python的规范
- UE4新手引导之下载和安装虚幻4游戏引擎
1) 进入虚幻4的官方主页(https://www.unrealengine.com/) 这里你可以获得关于虚幻4的最新资讯,包括版本更新.博客更新.新闻和商城等.自2015年起,该引擎已经提供免费下 ...
- mac下安装及配置tomcat
mac下的软件不像windows下的程序那样写注册表,对于tomcat的安装来说,在mac下是名符其实的绿色软件,具体操作如下: 1.到 apache官方主页 下载完整 tar.gz文件包.(没有专门 ...
- Postman接口调试神器-Chrome浏览器插件
首先大家可以去这个地址下载 Postman_v4.1.3 这个版本,我用的就是这个版本 http://chromecj.com/web-development/2014-09/60/download. ...
- EasyPR--开发详解(6)SVM开发详解
在前面的几篇文章中,我们介绍了EasyPR中车牌定位模块的相关内容.本文开始分析车牌定位模块后续步骤的车牌判断模块.车牌判断模块是EasyPR中的基于机器学习模型的一个模块,这个模型就是作者前文中从机 ...
- RSS阅读器
RSS阅读器(Really Simple Syndication)是一种软件/程序,实质都是为了方便地读取RSS和Atom文档.大概就是实现了订阅式阅读,推送用户感兴趣的新闻,博客等(比如等某位博主更 ...
- Java导出excel
一.介绍 常常有客户这样子要求:你要把我们的报表直接用Excel打开(电信系统.银行系统).或者是:我们已经习惯用Excel打印.这样在我们实际的开发中,很多时候需要实现导入.导出Excel的应用. ...
随机推荐
- Test SRM Level Three: LargestCircle, Brute Force
题目来源:http://community.topcoder.com/stat?c=problem_statement&pm=3005&rd=5858 思路: 如果直接用Brute F ...
- RabbitMQ与java、Spring结合实例详细讲解(转)
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文介绍了rabbitMq,提供了如何在Ubuntu下安装RabbitMQ 服务的方法. ...
- UVA 12103 - Leonardo's Notebook(数论置换群)
UVA 12103 - Leonardo's Notebook 题目链接 题意:给定一个字母置换B.求是否存在A使得A^2=B 思路:随意一个长为 L 的置换的k次幂,会把自己分裂成gcd(L,k) ...
- quick 2.23 它们的定义c++代码lua与总结的一些细节
它们的定义c++代码lua与总结的一些细节 参考:点击打开链接 1.自己定义 XXX.cpp .XXX.h 2.D:\quick\quick-cocos2d-x-2.2.3-rc\lib\cocos2 ...
- C# List使用District去重复数据
class ListDistinctDemo { static void Main(string[] args) { List<Person> personList = new List& ...
- Entity Framework的事务提交
一组业务整体处理的行为叫一个事务.这一组的业务都能成功处理,我们就可以把这个事务提交来保存你已做的行为结果.事物的Commit是执行了你的方法进行了数据库的提交,之前的sava都是放在缓存中并没有执行 ...
- MySQL InnoDB存储引擎undo redo解析
本文介绍MySQL数据库InnoDB存储引擎重做日志漫游 00 – Undo Log Undo Log 为了实现事务原子,在MySQL数据库InnoDB存储引擎,还使用Undo Log(简称:MVCC ...
- JDK5什么是新的线程锁技术(两)
一个. Lock线程同步实现互斥 Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也是一个对象. 两个线程运行的代码片段要实现同步相互排斥的效果.他们必须用 ...
- unity简易小地图的实现(NGUI)
首先,我们在场景中添加一个摄像机叫做minimapCamera, 把上面的Audio Listener组件去掉,调整摄像机位置,将其置于角色正上方,如图 新建一个Texture我们叫做minimapT ...
- Android尽量避免使用开发jpg图片
因为jpgeasy失真,因此,Android尽量避免使用开发.jpg图片,相反,使用.png图片,它使用LZ77衍生无损数据压缩算法. 事实上在这一点上,Google他已经暗示我们: 发现了没有,在r ...