Khi tôi có một khối trong Objective-C trông như thế này:Tự giữ lại trong khối Mục tiêu-C này?
self.request = [[ASIHTTPRequest requestWithURL:...
[self.longPollRequest setCompletionBlock:^{
NSLog(@"%@", self.request.responseString);
}];
nó sẽ giữ lại self
hoặc dứt khoát giữ lại self.request
?
Bạn có thể tránh giữ lại 'self' nếu bạn khai báo ví dụ: __block ASIHTTPRequest * blockRequest = self.request;' và sau đó tham chiếu 'blockRequest'. Vấn đề là bạn cần phải đảm bảo rằng khi khối của bạn chạy yêu cầu chưa được deallocated. – darvids0n