Re: Using NSPipe to get system command output
Re: Using NSPipe to get system command output
- Subject: Re: Using NSPipe to get system command output
- From: Kyle Sluder <email@hidden>
- Date: Mon, 13 Aug 2012 15:42:35 -0700
On Mon, Aug 13, 2012, at 02:17 PM, Charlie Dickman wrote:
> I'm trying to get the output from a vm_stat command using the following
> code. My app hangs in the [vmRead availableData] call as it should if
> there is no data available but it never comes back. What am I doing
> wrong? I have searched through the sample code on apples developer site
> with no luck.
>
> NSPipe *vmPipe = [NSPipe pipe];
> NSFileHandle *vmRead = [vmPipe fileHandleForReading];
>
> [vm setLaunchPath: @"/usr/bin/vm_stat"]; // 1 page = 4096 bytes
> [vm setStandardOutput: vmPipe];
> [vm launch];
> NSData *vmData = nil;
> int vmDataLength = 0;
> do {
> vmData = [vmRead availableData];
> vmDataLength = [vmData length];
> } while (vmDataLength != 0);
You can't do this. You need to run the runloop.
--Kyle Sluder
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden