我正在为 Mac OS X 制作一个 CLI 工具,我的主要看起来像这样:
int main(int argc, const char * argv[]){
@autoreleasepool {
//Some startup stuff here
[ServerPool sharedPool]; //Start the pool
/*
UI stuff for cli version
*/
while (1){
[[CLIUI sharedCLI] mainMenu];
[[CLIUI sharedCLI] menuInput];
}
}
return 0;
}
在代码的另一部分中,我正在启动一个 NSTimer
progressUpdateTimer = [NSTimer timerWithTimeInterval:1.0
target:self
selector:@selector(updateProgress:)
userInfo:nil
repeats:YES];
[[NSRunLoop currentRunLoop] addTimer: progressUpdateTimer forMode:NSDefaultRunLoopMode];
但是,它永远不会触发选择器 updateProgress:。我相信这是因为我的主目录中没有建立 NSRunLoop,对此有什么正确的解决方法?