什么是消息隊(duì)列?
托里ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!消息隊(duì)列提供了一種從進(jìn)程向另一個(gè)進(jìn)程發(fā)送一個(gè)數(shù)據(jù)塊的方法。每個(gè)數(shù)據(jù)塊都被認(rèn)為是有一個(gè)類型,接收者進(jìn)程的數(shù)據(jù)塊可以有不同的類型值。
消息隊(duì)列與管道的區(qū)別:消息隊(duì)列是基于消息的,而管道是基于字節(jié)流的,且消息隊(duì)列的讀取不一定是先入先出。
相關(guān)函數(shù)
創(chuàng)建新消息隊(duì)列或取得已存在消息隊(duì)列
返回值:成功,返回消息隊(duì)列的標(biāo)識(shí)符
失敗,返回-1
第一個(gè)參數(shù):消息隊(duì)列對(duì)象的關(guān)鍵字,函數(shù)將它與已有的消息隊(duì)列對(duì)象的關(guān)鍵字進(jìn)行比較來判斷消息 隊(duì)列是否已經(jīng)創(chuàng)建。由函數(shù)ftok()得來。
第二個(gè)參數(shù):控制函數(shù)的具體操作??梢匀∫韵聨讉€(gè)值:
IPC_CREAT:如果消息隊(duì)列不存在則創(chuàng)建,否則直接打開。
IPC_EXCL:單獨(dú)使用無意義。
IPC_CREAR | IPC_EXCL :消息隊(duì)列時(shí)新創(chuàng)建的。
3. ftok函數(shù)
函數(shù)ftok把一個(gè)已存在的路徑名和一個(gè)整數(shù)標(biāo)識(shí)得轉(zhuǎn)換成一個(gè)key_t值,稱為IPC鍵。
key_t ftok(const char* patnname,int id);
pathname:路徑必須存在且可以訪問
id: 低8位
4. 向隊(duì)列讀/寫消息
msgsnd將數(shù)據(jù)放到消息隊(duì)列中,msgrcv從隊(duì)列中取消息
msqid: 消息隊(duì)列的標(biāo)識(shí)符
msgp: 指向消息緩沖區(qū)的指針,此位置用來暫時(shí)存儲(chǔ)發(fā)送和接受的消息,是用戶定義的通用的結(jié)構(gòu)。
msgsz:消息的大小
msgtyp:從消息隊(duì)列內(nèi)讀取的消息形態(tài)。若為0,則消息隊(duì)列中的所有消息都被取完。
msgflg: msgflg為0時(shí),msgsnd()和msgrcv()在隊(duì)列呈滿或空的情形時(shí),采取阻塞等待的處理模式。
msgflg和常數(shù)連用時(shí),msgsnd()執(zhí)行時(shí)若隊(duì)列滿,msgrcv()將不會(huì)阻塞,而是返回-1,若 執(zhí)行msgrcv(),則在消息隊(duì)列呈空時(shí),等待不做返回-1.
5. 設(shè)置消息隊(duì)列的屬性
函數(shù)原型: int msgctl(int msgqid,int cmd,struct msqid_ds *buf);
對(duì)msgqid標(biāo)識(shí)的消息隊(duì)列執(zhí)行cmd操作。cmd操作分三種:IPC_STAT,IPC_SET,IPC_RMID
IPC_STAT:該命令用來獲取消息隊(duì)列對(duì)應(yīng)的msqid_ds數(shù)據(jù)結(jié)構(gòu),并將其保存到buf指定的地址空間。
IPC_SET:該命令用來設(shè)置消息隊(duì)列的屬性,要設(shè)置的屬性存儲(chǔ)在buf中。
IPC_RMID:從內(nèi)核中刪除msqid標(biāo)識(shí)的消息隊(duì)列。
6. 查看消息隊(duì)列 ipcs -q
刪除消息隊(duì)列 ipcrm -q semid
“comm.h”
“comm.c”
“client.c”
“server.c”
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
新聞標(biāo)題:進(jìn)程間通信---消息隊(duì)列-創(chuàng)新互聯(lián)
文章鏈接:http://aaarwkj.com/article44/ccjeee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、域名注冊(cè)、定制網(wǎng)站、標(biāo)簽優(yōu)化、外貿(mào)建站、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容