【发布时间】:2018-11-05 14:00:34
【问题描述】:
在这种情况下避免不良访问的最佳解决方案是什么?
__block NSString* string;
dispatch_sync(dispatch_get_main_queue(), ^{
string = [NSString stringWithString:@"I'm autoreleased!"];
});
NSLog(@"My string is: %@", string);
我将代码更改为:
NSMutableString *string = [[NSMutableString alloc] init];
dispatch_sync(dispatch_get_main_queue(), ^{
[string appendString:@"I'm autoreleased!"];
});
NSLog(@"My string is: %@", string);
[string release];
但我想知道是否没有更好的解决方案
【问题讨论】:
标签: objective-c-blocks autorelease unsafe-unretained