서버 스타일 프로그램 인 첫 번째 OS X 커맨드 라인 프로그램을 작성했습니다. 다양한 정보를 처리하고 다른 이벤트에 응답하는 것이 업무입니다.OS X main.m 서버 스타일 프로그램 실행
내 main.m
int main(int argc, const char * argv[]) {
@autoreleasepool {
PIPieman *pieman = [[[PIPieman alloc] init] autorelease];
[pieman start];
NSRunLoop *loop = [NSRunLoop currentRunLoop];
while (!pieman.finished && [loop runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]]);
}
return 0;
}
에 다음 코드를 나는 여러 문서에서이 코드를 가지고와 기본 개념은 pieman.finished
가 YES로 설정되면, 프로그램은 다음 종료한다는 점이다.
문제는 pieman 내부의 코드에서 플래그를 설정했지만 실행 루프가 트리거되지 않아 프로그램이 종료되지 않습니다. 나는 실행 루프를 트리거하는 방법을 찾고 있었고 다양성이있는 것처럼 보였지만 좋은 해결책 인 것 같은 느낌은 없었습니다. 예를 들어 실행 루프의 주기적 트리거링을 발생 시키려면 beforeDate:
을 몇 초로 줄일 수 있습니다.
내 우선 순위는 finished
부울 값 변경시 실행 루프를 트리거하는 것입니다.
제안 사항?
감사합니다. – drekka