Ist es notwendig, schwache Referenzen auf sich selbst immer innerhalb von Blöcken zu verwenden ..?

Ich bin immer verwirrt mit der Nutzung des selbst im inneren blocks, ich gehe durch einige der Apple-Dokumente aber noch nicht finden können, die richtige Antwort.

Einige Leute immer sagen, schwachen selbst in Blöcken, aber einige sagen, schwachen selbst in Blöcken, die kopiert werden, nicht neassary zu verwenden, immer.

Beispiel 1:

self.handler = ^(id response, NSError *error)
{
    self.newresponse = response; //use weak self here
};  

Beispiel 2:

Mit schwachen selbst;

__weak myViewController *weakSelf = self;

[UIView animateWithDuration:interval delay:0.0 options:curve animations:^
{
    [weakSelf.view.superview setTransform:CGAffineTransformMakeTranslation(0, -106)];
    //in above is it use of weak is neassary 
}
completion:^(BOOL finished)
{

}];

Ohne schwach selbst;

__weak myViewController *weakSelf = self;

[UIView animateWithDuration:interval delay:0.0 options:curve animations:^
{
    [myViewController.view.superview setTransform:CGAffineTransformMakeTranslation(0, -106)];

}
completion:^(BOOL finished)
{

}];

In der oben genannten Proben, die korrekt sind...?
**Ich bin mit der ARC

InformationsquelleAutor der Frage ShivaPrasad | 2012-11-02

Schreibe einen Kommentar