LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 666|回复: 0

信号量操作问题

[复制链接]
发表于 2005-5-26 23:54:14 | 显示全部楼层 |阅读模式
我想从一个信号量集中获取信号量的数目, 应该怎么用semctl 系统调用实现啊?
我这里有一个函数, 可是好像不起作用!!! 不知道怎么改, 请帮帮!!
  1. int get_sem_count(int sid) //sid为已有的信号量集的ID
  2. {
  3.         int rc;
  4.         struct semid_ds mysemds;
  5.         union semun semopts;
  6.       
  7.         /* Get current values for internal data structure */
  8.         semopts.buf = &mysemds;

  9.         if((rc = semctl(sid, 0, IPC_STAT, semopts)) == -1) {
  10.                 perror("semctl");
  11.                 exit(1);
  12.         }

  13.         /* return number of semaphores in set */
  14.         return(semopts.buf->sem_nsems);
  15. }
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表