2013年3月4日月曜日

リークしない再帰blocksの書き方



こんな感じ
__weak __block block_t recurse;
block_t block;
recurse = block = ^(id val) {
    …
    recurse(subval);
    …
}
__weak __block で同じ形のblocksを作っておいてそれに代入するのがミソ。

ブログではこの書き方に至った経緯が説明されている。また非同期の時の問題点についても説明あり。

0 件のコメント:

コメントを投稿