आईओएस 5 के नए TWRequest
एपीआई का उपयोग करके, मैं ब्लॉक उपयोग से संबंधित एक ईंट की दीवार में भाग गया हूं।उद्देश्य-सी में ब्लॉक के भीतर ब्लॉक का उपयोग करना: EXC_BAD_ACCESS
मुझे पहले अनुरोध के लिए सफल प्रतिक्रिया प्राप्त करने के बाद क्या करना है, तुरंत किसी अन्य को आग लगाना। दूसरे अनुरोध के समापन ब्लॉक पर, मैं फिर बहु-चरण संचालन की सफलता या विफलता को सूचित करता हूं।
यहाँ मैं क्या कर रहा मोटे तौर पर बताया गया है:
- (void)doRequests
{
TWRequest* firstRequest = [self createFirstRequest];
[firstRequest performRequestWithHandler:^(NSData* responseData,
NSHTTPURLResponse* response,
NSError* error) {
// Error handling hidden for the sake of brevity...
TWRequest* secondRequest = [self createSecondRequest];
[secondRequest performRequestWithHandler:^(NSData* a,
NSHTTPURLResponse* b,
NSError* c) {
// Notify of success or failure - never reaches this far
}];
}];
}
मैं अनुरोध के दोनों को बनाए रखना नहीं कर रहा हूँ या कहीं भी उन्हें एक संदर्भ रखते हुए; यह सिर्फ आग और भूल है।
हालांकि, जब मैं अनुप्रयोग चलाने के लिए, यह EXC_BAD_ACCESS
साथ पर दुर्घटनाओं:
[secondRequest performRequestWithHandler:...];
यह पहली बार अनुरोध ठीक कार्यान्वित करता है, लेकिन जब मैं एक हैंडलर के साथ एक दूसरा शुरू करने के लिए प्रयास करते हैं, यह दुर्घटनाओं। उस कोड के साथ क्या गलत है? ...
- (TWRequest*)createFirstRequest
{
NSString* target = @"https://api.twitter.com/1/statuses/home_timeline.json";
NSURL* url = [NSURL URLWithString:target];
TWRequest* request = [[TWRequest alloc]
initWithURL:url parameters:params
requestMethod:TWRequestMethodGET];
// _twitterAccount is the backing ivar for property 'twitterAccount',
// a strong & nonatomic property of type ACAccount*
request.account = _twitterAccount;
return request;
}
कृपया 'createFirstRequest' और' createSecondRequest' 'कोड का कोड पोस्ट करें – vikingosegundo
क्या आप' -createSecondRequest' के लिए कोड पोस्ट कर सकते हैं? मुझे लगता है कि इस कोड को पृष्ठभूमि थ्रेड पर चलने में कोई समस्या है क्योंकि इस बात की कोई गारंटी नहीं है कि पूरा थ्रेड पूरा होने वाला थ्रेड किस थ्रेड पर चल रहा है। –
हो गया; खेद है कि, यह नहीं सोचा था कि यह प्रासंगिक होगा। – biasedbit