打印
[嵌入式linux]

linux信号量问题

[复制链接]
986|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
snakeemail|  楼主 | 2013-9-3 14:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

这个里面的array是个局部变量,用来设置全局变量信号?可以这样吗?

//下面是给一个信号量初始化的代码。
        union semun  sem_args;
        unsigned short array[1]={1};
        sem_args.array = array;
        ret = semctl(semid, 0, SETALL, sem_args);//0代表对1个信号来量初始化,即有1个资源
         if (-1 == ret)
        {
                perror("semctl");
                exit(EXIT_FAILURE);
        }

相关帖子

沙发
reille| | 2013-9-3 19:18 | 只看该作者
本帖最后由 reille 于 2013-9-3 19:31 编辑

setctl用于对信号量执行各种控制操作。
对于这个示例,SETALL的意思,是把sem_args指针数组的值设给semid中所有信号量的值,也就是所谓的信号量组初始化操作!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:提供500W线性 交流电源。0~300VAC,45~500Hz 提供10KW,0-330V直流电源,具体见http://blog.21ic.com/user1/3639/archives/2012/88528.html

547

主题

1910

帖子

8

粉丝