msg_server.c

来自「这是一个linux下ipc通讯的服务端。主要体现linux下的消息队列。」· C语言 代码 · 共 50 行

C
50
字号
#include<stdio.h>#include<stdlib.h>#include<sys/types.h>#include<sys/msg.h>#include<string.h>struct my_message{ 	long int message_type;	char text[1024]; };int main(int argc,char **argv){ 	int msgid;	long int rev=0;	ssize_t rcv;	char buffer[1024];	int running=1;	struct my_message msg;    	memset(buffer,0,sizeof(buffer));	msgid=msgget((key_t)1234,IPC_CREAT|0666);	if(-1 == msgid)	{		printf("msgget is error\n");		exit(0);	}	while(running)	{	    printf(" waiting for client write:\n");		rcv=msgrcv(msgid,(void *)&msg,sizeof(msg),rev,0);		if(rcv == -1)		{			printf("msgrcv is faulire\n");			exit(0);		}		//printf("rcv=%d\n",rcv);		printf("rev : %s\n",msg.text);		if((strncmp(msg.text,"end",3))==0)		{			running=0;		}	    }	msgctl(msgid,IPC_RMID,0);	return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?