Estaba leyendo algo de código fuente de https://github.com/MugunthKumar/MKNetworkKit, y vi esta¿Qué significa [self self] en el objetivo c?
+(void) initialize {
if(!_sharedNetworkQueue) {
static dispatch_once_t oncePredicate;
dispatch_once(&oncePredicate, ^{
_sharedNetworkQueue = [[NSOperationQueue alloc] init];
[_sharedNetworkQueue addObserver:[self self] forKeyPath:@"operationCount" options:0 context:NULL];
[_sharedNetworkQueue setMaxConcurrentOperationCount:6];
});
}
}
lo que hace que [self] quiere decir aquí?
Mi primera suposición es que apunta a la meta clase de uno mismo. Tal vez alguien puede confirmar si esto es cierto. Más información sobre metaclases de ObjC aquí: http://cocoawithlove.com/2010/01/what-is-meta-class-in-objective-c.html Lea también lo siguiente: http://www.sealiesoftware.com /blog/archive/2009/04/14/objc_explain_Classes_and_metaclasses.html ('Objective-C utiliza metaclases para objetivos prácticos como métodos de clase, pero por lo demás tiende a ocultar metaclases. por ejemplo, [clase NSObject] es idéntico al [libre NSObject]') –
@ WolfgangSchreurs: No. – Jesper