誰かが私を正しい方向に向けてくれることを望んでいる、非常に簡単な質問があります。私は Java 開発者であり、グローバル ロックに対する正しい目的の C アプローチを見つけようとしています。いくつかの場所でインスタンス化されたクラスがあります。各インスタンスは、1 つの共通ファイルに対して読み取りと書き込みを行います。そのため、このクラスのすべてのメソッド呼び出しがアトミックであることを確認する必要があります。Java では、これは次のように行われます。
static Object lock
public void writeToFile(){
synchronized(lock){
//thread safe code goes here
}
}
静的識別子は、ロック オブジェクトがすべてのインスタンスで共有され、スレッドセーフであることを意味します。残念ながら、iOS には同じようにクラス変数がないため、この機能を実現する最善の方法が何であるかはわかりません。