Instrumentsリークは、このコードがリークすると言っています:
NSString *name = [file substringToIndex:i];
Layer *actualLayer = nil;
for (Layer *lay in layers) {
if ([lay.layerName isEqual:name]) {
actualLayer = lay;
}
}
名前はリークオブジェクトです。奇妙なことがいくつかあります。リークするのは時々だけで、常にではありません(このコードスニペットは、アプリの通常の実行中に数百回実行されますが、リークは3〜4回だけです)。もう1つの奇妙なことは、名前オブジェクトが自動解放オブジェクトであり、明示的に保持または解放されることはないということです。それでは、どのようにしてリークされたのでしょうか。
スタックを見ると、substringWithRangeはsubstringToIndexによって呼び出されるので、問題はsubstringToIndexメソッドにあると思います。