NSDateFormatter を dispatch_async 内で使用する方法について少し混乱しています。スレッドセーフではないことを読みましたが、dispatch_async 内で使用するたびに新しいインスタンスを作成する必要があるということですか、それとも以下のコードが示すように静的として使用できますか? シリアルキューなので、同時に複数の場所からアクセスできないのでしょうか?
dispatch_async(video_sync_request_operation_processing_queue(), ^{
static NSDateFormatter *dateFormatter = nil;
if (!dateFormatter) {
dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
}
...
});