iOSで共有メモリのブロックを構築しようとしています。コンパイルしてリンクしますがshmget()
、最も無害なパラメーターにSIGSYSシグナルをスローします。
NSString *p = [[NSBundle mainBundle] pathForResource:@"crash" ofType: nil];
key_t tok = ftok([p UTF8String], 918273);
int mid = shmget(tok, 4096, IPC_CREAT|S_IRUSR|S_IWUSR);
tok
は大きな正の整数であり、-1ではありません。サイズ-1024を試しましたが、同じ効果です。
SysV共有メモリはiOSでもサポートされていますか?ヘッダーとライブラリが存在するか、コンパイラ/リンカが文句を言います。同じコードがシミュレーターで機能します。私は何が間違っているのですか?
私の興味はこの質問から生じています。