第5月第6天 NSOperation isConcurrent category同名覆盖

1.

@implementation AFURLConnectionOperation
...
- (BOOL)isConcurrent {
    return YES;
}

NSOperation调用start方法即可开始执行操作,NSOperation对象默认按同步方式执行,也就是在调用start方法的那个线程中直接执行。NSOperation对象的isConcurrent方法会告诉我们这个操作相对于调用start方法的线程,是同步还是异步执行。isConcurrent方法默认返回NO,表示操作与调用线程同步执行

http://blog.csdn.net/q199109106q/article/details/8565923

2.restkit

http://nsscreencast.com/episodes/52-restkit-coredata

3.magicrecord    MR_contextForCurrentThread

 

+ (void) saveInBackgroundWithBlock:(void(^)(NSManagedObjectContext *localContext))block completion:(void(^)(void))completion
{
    NSManagedObjectContext *savingContext  = [NSManagedObjectContext MR_rootSavingContext];
    NSManagedObjectContext *localContext = [NSManagedObjectContext MR_contextWithParent:savingContext];

    [localContext performBlock:^{
        [localContext MR_setWorkingName:NSStringFromSelector(_cmd)];

        if (block)
        {
            block(localContext);
        }

        [localContext MR_saveToPersistentStoreAndWait];

        if (completion)
        {
            completion();
        }
    }];
}

 

http://www.cnblogs.com/mindyme/p/5089454.html

2.同名覆盖

生成了所有method的list之后,调用attachMethodLists将所有方法前序添加进类的方法的数组中,也就是说,如果原来类的方法是a,b,c,类别的方法是1,2,3,那么插入之后的方法将会是1,2,3,a,b,c,也就是说,原来类的方法被category的方法覆盖了,但被覆盖的方法确实还在那里。

http://ios.jobbole.com/82917/

原文地址:https://www.cnblogs.com/javastart/p/6369571.html