2014-01-15 21 views

回答

2

它會幫助你得到運行的應用程序的列表:

for (NSRunningApplication *app in [[NSWorkspace sharedWorkspace] runningApplications]) { 
     NSLog(@"%@",[app localizedName]); 
    } 
+2

@dhanshree&shardul .....分享你的知識謝謝並更新我。 – kashinath

1

你可能會得到CPU的使用率:

- (NSString*) get_process_usage:(int) pid 
{ 
    NSTask *task; 
    task = [[NSTask alloc] init]; 
    [task setLaunchPath:@"/bin/ps"]; 

    NSArray *arguments; 
    arguments = [NSArray arrayWithObjects: @"-O",@"%cpu",@"-p",[NSString stringWithFormat:@"%d",pid], nil]; 
    [task setArguments: arguments]; 

    NSPipe *pipe; 
    pipe = [NSPipe pipe]; 
    [task setStandardOutput: pipe]; 

    NSFileHandle *file; 
    file = [pipe fileHandleForReading]; 

    [task launch]; 

    NSData *data; 
    data = [file readDataToEndOfFile]; 

    NSString *string; 
    string = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding]; 

    NSString* temp = [string stringByReplacingOccurrencesOfString:@"PID %CPU TT STAT  TIME COMMAND" withString:@""]; 

    NSMutableArray* arr =(NSMutableArray*) [temp componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; 
    [arr removeObject:@""]; 

    [string release]; 
    [task release]; 

    if([arr count]>=2) 
     return [arr objectAtIndex:1]; 

    else 
     return @"unknown"; 

} 
+0

它無法在Mac App Store上提交,請選擇其他解決方案。 –

+0

它不在沙箱環境中工作....沒有沙箱,它工作正常 –

相關問題