私がこれをするとします:
MyClass *vista = [[MyClass alloc] initWithFrame:CGRectZero];
vista.onFinish = ^{
CGRect rect = vista.bounds;
// bla bla bla
};
次に、xcode はこのエラーを私に与えます: このブロックでビスタを強力にキャプチャすると、保持サイクルが発生する可能性があります
誰かが vista をこのように宣言することを提案しました
__unsafe_unretained MyClass *vista = [[MyClass alloc] initWithFrame:CGRectZero];
しかし、問題はこれです。vista 変数は数行下のプロパティに割り当てられます。
self.myVista = vista;
これは非原子的で強力なプロパティです。
どうすれば解決できますか?それを使用する一時的な id 変数を宣言できますが、これは不十分な解決策のようです。
何か考えはありますか?