C言語で複数スレッドからファイルアクセスする場合、ロックする関数についてご教示ください。 下記のようなプログラムを作成しています。 ・スレッド(1)は、ファイルに対してライトします。 ・スレッド(2)は、スレッド(1)によってライトされたファイルに対してリードします。 ・必ずしもスレッド(1)(2)は同じファイルにアクセスするわけではなく、スレッドごとにfopen()します。 ・タイミングによってスレッド(1)(2)は同じファイルにアクセスします。 ・(不測の自体でロックをとったままスレッドが落ちてしまった場合、他方のスレッド側ロックを強制解除して処理は継続させたいです(別途エラーメッセージはログに出力します)。 flock(fd,LOCK_EX)をつかってロックを取る方針で検討していたのですが、 「flock()はファイル記述子ごとにロックするので、 fopen()を別々に行っていては正
![複数スレッドからファイルアクセスする場合の、適切なロック方法](https://cdn-ak-scissors.b.st-hatena.com/image/square/f6bc393cd0b6bd2196935e603c5d031bd6ca6699/height=288;version=1;width=512/https%3A%2F%2Fcdn.sstatic.net%2FSites%2Fja%2FImg%2Fapple-touch-icon%402.png%3Fv%3D1cfb10b305ca)