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

📄 server.c

📁 linux下面的文件锁和信号量的程序
💻 C
字号:
/*******************************************************************	File:server.c*	Description:server of an test program for IPC using semaphore*	Author:Luke Huang*	Date:Jun. 14th 2002******************************************************************/#include "key.h"int main(int argc,char ** argv){	int exp_opt,oflag,semid,nsems;	union semun arg;	ushort * ptr;	struct semid_ds seminfo;	oflag=SEM_MODE|IPC_CREAT;	/*	while((exp_opt=getopt(argc,argv,"e"))!=-1){		switch(exp_opt){			case 'e':				oflag|=IPC_EXCL;			break;			default:				;		}	}	if(optind!=argc-2){		printf("usage:server [-e] <pathname> <nsems>\n");		exit(1);	}	*/	//nsems=atoi(argv[optind+1]);	//nsems=2;	if((semid=semget(ftok(KEY_PATH,KEY_ID1),2,oflag))==-1){		perror("semget erro!\n");		exit(1);	}	printf("semaphore id is %d \n",semid);	arg.buf=&seminfo;	semctl(semid,0,IPC_STAT,arg);	nsems=arg.buf->sem_nsems;	printf("Semaphore number is %d \n",nsems);	arg.array=ptr;	ptr[0]=atoi(argv[1]);	ptr[1]=atoi(argv[2]);	semctl(semid,0,SETALL,arg);	exit(0);}/* END OF FILE:server.c */

⌨️ 快捷键说明

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