Linux下編寫C語言(一) hollow c和消息隊列
前言:客戶有個需求,需要使用消息隊列進行程序間通信,並且發送端代碼不方便修改,搜索,學習了一下還是不知道JAVA怎麼實現,就決定自己寫C程序接受消息隊列,然後socket發給java。
注:如果有方法可以使用java(最好是spring)讀取到Linux系統自帶的消息隊列的方法請不吝賜教。
一、System V規則下的消息隊列
大家知道linux中支持Posix消息隊列和System V消息隊列,這裏主要給大家介紹System V消息隊列。下文所說的消息隊列均是System V消息隊列。
Linux下使用ipcs -q
可以查看到所有的消息隊列
其中鍵 是指每個消息隊列唯一的key值,這裏是16進制的值0x00000401就是十進制的 1025。
還有一個命令行ipcs -t
比較好用,可以看到消息隊列(進程間通信)發送/接收/更改的時間。
二、Hollow C
編寫c語音在Linux下第一個程序,
新建touch hollow.c
文件;
vi hollow.c
修改文件內容;
#include"stdio.h"
void main()
{
printf("Hello World !\n");
}
編譯c文件gcc -o hollow hollow.c
生成hollow.out
執行hollow.out ./hollow
輸出Hello World !