在for循環(huán)中, 大量創(chuàng)建相同的臨時(shí)變量的問(wèn)題
在for循環(huán)中創(chuàng)建臨時(shí)變量, 由于變量只有離開(kāi)作用域的時(shí)候才會(huì)被釋放, 所以會(huì)導(dǎo)致變量反復(fù)創(chuàng)建內(nèi)存暴增
-
而正確的做法就是添加一個(gè)自動(dòng)釋放池, 變量使用結(jié)束后立刻釋放, 避免內(nèi)存開(kāi)銷(xiāo)
int someLargeNumber = 10000; for (int i = 0; i < someLargeNumber; i++) { @autoreleasepool { NSString *string = @"Abc"; string = [string lowercaseString]; string = [string stringByAppendingString:@"xyz"]; NSLog(@"%@, %p", string, string); } }