2012-02-25 13 views
11

¿Cómo mantendría para siempre una herramienta de línea de comandos?Mantener activa la herramienta de línea de comandos

Este es mi código:

#import <Foundation/Foundation.h> 

int main (int argc, const char * argv[]) 
{ 

    @autoreleasepool { 

     [[NSDistributedNotificationCenter defaultCenter] addObserverForName:nil object:nil queue:nil usingBlock:^(NSNotification *notification) 
     { 
      NSLog(@"%@", notification); 
     }]; 

     //Keep alive... 

    } 
    return 0; 
} 

Respuesta

23

Es necesario entrar en un runloop utilizando CFRunLoop o NSRunLoop.

Probar:

[[NSRunLoop currentRunLoop] run]; 
+0

Debería ser 'NSRunLoop' con una L mayúscula, pero si no funcionó a la perfección. – Tyilo

+0

Se corrigió la capitalización. – EricS

+0

¡Eso fue todo, gracias! – Andy

0

En Swift 4,

RunLoop.current.run() 

Saludos.

+0

¿Por qué es el voto a favor? Encontré esta respuesta mientras estaba usando Swift para mantener activa la herramienta de línea de comandos. Pensé que a algunas personas les gustaría saberlo también. –

Cuestiones relacionadas