Objective-CでNSBlockOperationを使用しているときにメモリリークを回避するには、ブロック内のブロック操作を参照できるように変数をweakとして宣言する必要があります。必要であれば)、キャンセル、一般的にこのような:私は弱いとして私NSBlockOpeartionを宣言しようとすると、Swift NSBlockOperation()Leak:NSBlockOperation()を弱くできません
__weak NSBlockOperation *blockOp = [NSBlockOperation blockOperationWithBlock:^{
if (blockOp.cancelled) {
...
}
}];
しかしスウィフトでは、それは常にnilです。
weak var blockOp = NSBlockOperation()
弱い参照がなければ、毎回メモリが少し漏れていることを除いて、すべてが問題ありません。 Swiftでメモリをリークすることなく、ブロック内のブロックをどのように参照できますか?
ゼロ強い参照がある場合、あなたが一般のObj-Cで正確に同じ問題を抱えているだろう – nhgrif
....弱参照を自動的にゼロになります。 – jtbandes