2012-04-24 57 views
0

我有一个学校作业,我们应该解决readers-writers问题。正如我之前发现sem_init is not supported on osx machine,所以我去了sem_open。但是,下面的代码不能按预期工作。sem_unlink权限被拒绝

if(sem_open(sem_reader, O_CREAT, 1, 0600) == SEM_FAILED) 
    perror("sem_reader"); 

信号灯被创建,但是当我尝试使用下面的代码在解除连结:

if(sem_unlink(sem_reader) != 0) 
    perror("unlink_sem_reader"); 

我得到的输出:

unlink_sem_reader: Permission denied 

我试图像0700权限玩,0660等,但我总是得到许可证。它们都包裹在功能中,并且不采取任何行动。我不确定问题出在哪里。我的问题是:

我设置了权限不正确还是问题在别的地方?

编辑:在Xcode工作/ 10.7

+0

只是sudo它,伙计。 – 2012-04-24 20:16:42

回答

3

我想你切换参数模式和sem_open价值。

+0

哦,男人,现在我觉得哑:/谢谢先生! – rojcyk 2012-04-24 20:31:17