[Iphone] आईफोन आईओएस अलग थ्रेड में चल रहा है



Answers

आईओएस में मल्टीथ्रेडिंग का सबसे अच्छा तरीका जीसीडी (ग्रैंड सेंट्रल डिस्पैच) का उपयोग कर रहा है।

//creates a queue.

dispatch_queue_t myQueue = dispatch_queue_create("unique_queue_name", NULL);

dispatch_async(myQueue, ^{
    //stuffs to do in background thread
    dispatch_async(dispatch_get_main_queue(), ^{
    //stuffs to do in foreground thread, mostly UI updates
    });
});
Question

एक अलग थ्रेड पर कोड चलाने का सबसे अच्छा तरीका क्या है? क्या यह:

[NSThread detachNewThreadSelector: @selector(doStuff) toTarget:self withObject:NULL];

या:

    NSOperationQueue *queue = [NSOperationQueue new];
NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self
                                                                        selector:@selector(doStuff:)
                                                                          object:nil;
[queue addOperation:operation];
[operation release];
[queue release];

मैं दूसरा रास्ता कर रहा हूं लेकिन वेस्ले कुकबुक जो मैंने पढ़ा है वह पहले उपयोग करता है।







Links