linux程序間通訊之訊息佇列

2021-05-21 21:39:17 字數 731 閱讀 9574

訊息佇列就是乙個訊息的鍊錶。可以把訊息看作乙個記錄,具有特定的格式以及特定的優先順序。對訊息佇列有寫許可權的程序可以向中按照一定的規則新增新訊息;對訊息佇列有讀許可權的程序則可以從訊息佇列中讀走訊息。

#include

#include

#include

#include

#include

#include

int main()

send_buf,receive_buf;

if((msqid=msgget(ipc_private,0700))<0)//建立訊息佇列

else

printf("msgget建立訊息佇列成功,該訊息佇列識別代號為%d。/n",msqid);

if((pid=fork())<0)

else if(pid>0)//父程序,傳送訊息到訊息佇列

else

printf("msgsnd訊息傳送成功。/n");

sleep(2);

exit(0);

}else//子程序,從訊息佇列中接收訊息]

else

printf("msgrcv讀取資訊成功。/n");

printf("自訊息佇列讀取到的內容為%s,共讀取%d個位元組。/n",receive_buf.mtext,infolen);

if((msgctl(msqid,ipc_rmid,null))<0)//刪除msqid對應的訊息佇列

else}} 

linux程序間通訊之訊息佇列

訊息佇列 使用訊息佇列的好處 可以給訊息附加特定的訊息型別。訊息佇列用於同一臺計算機的程序間的通訊。include include key t ftok const char pathname,int proj id 該函式根據檔名生成乙個id 系統建立ipc 通訊 訊息佇列 訊號量和共享記憶體 時...

Linux程序間通訊之訊息佇列

實現功能 編寫程式sender,它建立乙個訊息佇列 然後,迴圈等待使用者通過終端輸入一串字元,將這串字元通過訊息佇列傳送給receiver,直到使用者輸入 bye 為止 最後,它向receiver程序傳送訊息 end 並且等待receiver的應答,等到應答訊息後,將接收到的應答資訊顯示在終端螢幕上...

程序間通訊之訊息佇列 Linux

一 什麼是訊息 訊息 message 是乙個格式化的可變長的資訊單元。訊息機制允許由乙個程序給其它任意的程序傳送乙個訊息。當乙個程序收到多個訊息時,可將它們排成乙個訊息佇列。1 訊息機制的資料結構 1 訊息首部 記錄一些與訊息有關的資訊,如訊息的型別 大小 指向訊息資料區的指標 訊息佇列的鏈結指標等...