📄 msg_omc.h
字号:
#define MAX_PROC 8#define FORE 1#define BACK 0#define COMIR 0#define COMIS 1#define PRNTMA 2#define COMPHD 3#define INFPHD 4#define TIMER 5#define PROGMA 6#define COMIR_T 1#define COMIS_T 2#define PRNTMA_T 10#define COMPHD_T 21#define INFPHD_T 22#define TIMER_T 100#define PROGMA_T 111#define MSG_NO_RC 1 #define MSG_NO_SE 2 int msg_qid;int iPermission_Flags;int iRc, Key;int iFlags = IPC_NOWAIT; char msg_str[256];long lmsg_type;struct msqid_ds Msq_Stat; struct proc_desc { char name[8]; /* english name */ short pid; /* progess's id */ unsigned short int number; /* process's oder number */ unsigned short int type; /* type code for process */ unsigned short int status; /* fore stage or back stage */ } p_d[MAX_PROC];struct fault_report { unsigned short int where; /* where has the problem */ unsigned short int problem; } f_p[MAX_PROC];struct ask_to_do { unsigned short int who; /* ask who to do what */ unsigned short int what; } atd[MAX_PROC];struct the_message { long msg_to; long msg_from; struct proc_desc p_d[MAX_PROC]; struct fault_report f_p[MAX_PROC]; struct ask_to_do atd[MAX_PROC]; } msg_txt; /* msgr() read a message from message queue msg_qid */msgr(){ iRc = msgrcv(msg_qid, &msg_txt, (sizeof(msg_txt)),lmsg_type,iFlags); if(iRc==0) { perror("No data read from message queue\n"); } else return(0);} /* msg_send() send a message to message queue msg_qid */msg_send(){ iRc = msgsnd(msg_qid, &msg_txt, (sizeof(msg_txt)),iFlags); if(iRc!=0) { perror("TIMER: Failed to send mesage to queue"); return(-1); } else return(iRc);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -