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

📄 ejectdevice.c

📁 在linux对cdrom直接使用ioctl控制cdrom的仓门
💻 C
字号:
#include <stdio.h>#include <string.h>#include <pthread.h>#include <stdlib.h>#define	MAX_DEV 4#define	NAM_LEN	30char    devname[MAX_DEV][NAM_LEN];void process_eject(char *devname){	system(devname);}int main(){	int	i;	int	tid[MAX_DEV];	pthread_t	pthread_id[MAX_DEV];	for(i=0;i<MAX_DEV;i++)		sprintf(devname[i],"eject /dev/sr%d",i);/*	for(i=0;i<MAX_DEV;i++){		printf("OUT devicenum is /dev/sr%d\n",i);		system(devname[i]);	}*/	for(i=0;i<MAX_DEV;i++){printf("OUT devicenum is /dev/sr%d\n",i);		tid[i] = pthread_create(&pthread_id[i],NULL,(void *)process_eject,(char *)&devname[i]);		if(tid[i] < 0){			printf("Error on create process_eject pthread!\n");			continue;		}	}	for(i=0;i<MAX_DEV;i++)		pthread_join(pthread_id[i],NULL);	for(i=0;i<MAX_DEV;i++)		sprintf(devname[i],"eject -t /dev/sr%d",i);	for(i=0;i<MAX_DEV;i++){printf("IN devicenum is /dev/sr%d\n",i);                tid[i] = pthread_create(&pthread_id[i],NULL,(void *)process_eject,(char *)&devname[i]);                if(tid[i] < 0){                        printf("Error on create process_eject pthread!\n");                        continue;                }        }	for(i=0;i<MAX_DEV;i++)                pthread_join(pthread_id[i],NULL);}

⌨️ 快捷键说明

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