我已经看到了一些关于如何保持 NSTask 在后台运行的好信息,尽管这并不完全是我想要做的。我想做的是在后台定期运行一个 NSTask (比如每 30 秒),然后杀死它;这可能是我想做的一个例子:
NSTask *theTask = [ [ NSTask alloc ] init ];
NSPipe *taskPipe = [ [ NSPipe alloc ] init ];
[ theTask setStandardError:taskPipe ];
[ theTask setStandardOutput:taskPipe ];
[ theTask setLaunchPath:@"/bin/ls" ];
[ theTask setArguments:[ NSArray arrayWithObject:@"-l" ] ];
[ theTask launch ];
// Wait 30 seconds, then repeat the task