Я пытаюсь выяснить, как заставить этот фрагмент кода из предыдущего вопроса работать, но я застрял на части о том, как "зарегистрировать" NSFileHandleReadToEndOfFileCompletionNotification.
Это мой код:
NSTask *topTask = [NSTask new];
[topTask setLaunchPath:@"/usr/bin/top"];
[topTask setArguments:[NSArray arrayWithObjects:@"-s", @"1", @"-l", @"3600", @"-stats", @"pid,cpu,time,command", nil]];
NSPipe *outputPipe = [NSPipe pipe];
[topTask setStandardOutput:outputPipe];
[topTask launch];
... который работает нормально, пока я не добавлю следующее:
[[outputPipe fileHandleForReading] readToEndOfFileInBackgroundAndNotify];
... что приводит к зависанию программы.И когда я добавляю это:
NSString *outputString = [[[NSString alloc] initWithData:[[notification userInfo] objectForKey:NSFileHandleNotificationDataItem] encoding:NSUTF8StringEncoding] autorelease];
... код не компилируется, и я получаю предупреждение! 1014 *
'notification' undeclared.
Любая помощь в этом вопросе приносит огромную благодарностьМоего имени.