Objective-Cでは、@synchronized
構造体を使用することで、あるオブジェクトでブロックが同期していると宣言できます。@ staticメソッドで同期されています
@synchronized (self) {
// Do something useful
}
は、しかし、私はあなたが静的メソッド(代わりに-
の+
)を持っているときに正確self
が参照しているものを興味:それは次のようになります。私はAppleのドキュメントを見てみることを試みました、そして、それはそれがOKであると言っていますが、本当にそれを説明しません。私はそれが動作することを知っている、私はちょうどそれが意味するものが不思議です。
ありがとうございます。シンプルなものがあることは分かっています。 – Itay
サブクラスselfは別のオブジェクト(クラス)なので、クラスメソッドの@synchronized(self)は危険であることに注意してください。 –