⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 msgopt.c

📁 sco unix下c语言开发工具库
💻 C
字号:
#include <stdio.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include "all.h"

int	tomon;
int	monflag = 0;

getmon()
{
	if(monflag == 1) return(0);

	if((tomon = gmsg(MONITOR)) == -1) {
		errcall(ERROR, "Get Monitor err!");
		return(-1);
	}

	monflag = 1;
	return(0);
}

to_trace(cardno,message)
char	*cardno;
char	*message;
{
int	tosys;
struct	sysmon_struct sys;

	if(getmon() == -1)	return(0);

	if(!trace_ok()) 	return(0);

	tomon = gmsg(MONITOR);
	if(tomon<0) {
		errcall(ERROR,"msgget SYSMONITOR err!");
		return(-1);
	}
	sys.mtype = (long)TO_TRACE;

	sprintf(sys.mtext, "%16.16s%10.10s", cardno, message);
	
	msgsnd(tomon,&sys,sizeof(struct sysmon_struct),IPC_NOWAIT);	
	return(0);
}


to_monitor(buf)
char	*buf;
{
int  	mqid,i;
struct 	msg_struct msnd;

	if(getmon() == -1)	return(-1);
	if(!monitor_ok())	return(0);
	msnd.mtype=(long)TO_MON;
/*	memcpy(msnd.mtext,buf,512);*/
	sprintf(msnd.mtext, "%-81.81s", buf);

	i = msgsnd(tomon, &msnd,512,IPC_NOWAIT);
	if (i == -1) {
		errcall(ERROR,"msgsnd monitor err!");
		return(-1);
	}
	return(0);
}

⌨️ 快捷键说明

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