Trên trang 17 của bản trình bày WWDC14 này , nó nói
Làm việc với Objective-C? Vẫn phải quản lý bộ lưu trữ tự động lưu trữ hồ sơ tự động
{/ * mã * /}
Điều đó nghĩa là gì? Có nghĩa là nếu cơ sở mã của tôi không có bất kỳ tệp Objective-C nào, autoreleasepool {}
là không cần thiết?
Trong câu trả lời của một câu hỏi liên quan , có một ví dụ autoreleasepool
có thể hữu ích:
- (void)useALoadOfNumbers {
for (int j = 0; j < 10000; ++j) {
@autoreleasepool {
for (int i = 0; i < 10000; ++i) {
NSNumber *number = [NSNumber numberWithInt:(i+j)];
NSLog(@"number = %p", number);
}
}
}
}
Nếu đoạn mã trên được dịch sang Swift với autoreleasepool
drop, Swift có đủ thông minh để biết rằng number
biến đó sẽ được phát hành sau lần đầu tiên }
(giống như một số ngôn ngữ khác) không?
autoreleasepool
Swift. Tôi đã mở rộng câu hỏi của bạn và hỏi nó trong các diễn đàn nhà phát triển .