私はオープンソースプロジェクトでこのメソッドを使用していますが、スタティックアナライザを実行しようとするとメモリがリークしないのはなぜかと思います。私はそれが漏れるはずだと思う理由は、それはメモリを割り当てているがそれをリリースしないためです。メソッドが呼び出されるたびに解放されます(= nilのため)。誰でも私のために光を当てることができますか?なぜこのNSMutableSetのメモリが漏れていないのですか?
- (BOOL)isValid(NSString *)name
{
// Using a set so access is faster
static NSMutableSet *exp = nil;
// Setup the set once with AB testing info
if (exp == nil) {
exp = [[NSMutableSet alloc] initWithCapacity:5];
}
if (exp != nil) {
return YES;
}
return NO;
}
弧を使用していますか –
いいえ、私はまだこれをホストしていません.. – adit
静的でない場合は文句を言いますか? expが静的であるとすれば、それは不平を言いたくはありません。静的なポイントが保持されているオブジェクトを保持するほどの漏れはありません。 – Obliquely