キューを作成しようとしていますが、許可が拒否されたというエラーが発生します。以前にこのエラーが発生しましたが、キーの作成時にエラーをキャッチするためのコードを追加したところ、機能していました。それ以来、私が変更した唯一のことは、キュー作成コードを別の関数に入れたことです。私のコードは次のようになります。
key_t key1;
int msqid1;
int main(int arc, char *argv[])
{
getKeys();
queueCreate();
}
void getKeys()
{
if ((key1 = ftok(".", '1')) == -1)
{
perror("key1 creation");
exit(1);
}
}
void queueCreate()
{
if ((msqid1 = msgget(key1, 0666 | IPC_CREAT)) == -1)
{
perror("msqid1 creation");
exit(1);
}
}
スローされるエラーは「msqid1 の作成: 権限が拒否されました」です。何か案は?