私は、共有メモリ領域が2つの異なるプロセスによって排他的にアクセスされるシナリオを持っています。プロセスを起動すると、最初のプロセスが正常にミューテックスをロックし、メモリを更新し、ミューテックスのロックを解除します。しかし、私は、2番目のプロセスがロックしようとすると、まだデッドロック状態にあり、ミューテックスがロックを解除するのを待っていることに気づいています。共有メモリ内のstd :: mutexが動作しない
mutexロックの時間差は、第1および第2のプロセスでは10秒です。
私はstd :: mutexを使用しています。私が逃していることを教えてください。
[最小限の完全で検証可能な例](http://stackoverflow.com/help/mcve)を作成してください。そして、私は 'std :: mutex'がここで使う正しいプリミティブであるかどうか分からないので、(スレッド間の同期化を助けるために)プロセス固有のデータを使うかもしれません。あなたのプラットフォームは、クロスプロセスのmutexまたはセマフォを代わりに使用することをお勧めします。 –
あなたの潜在的な間違いをよく理解するために、あなたがしようとしていることの例を挙げてください。 – Caduchon
できるだけプログラムのコードを最小限にしてください。 エラーがある場合は、 –