2012-09-19 74 views
0

我有一個文件句柄設置爲讀取stdout的內容,當我嘗試使用av​​ailableData從中拉出數據時,它會掛起,但只有當應用程序在我的設備上手動運行。當我通過Xcode或模擬器在設備上運行應用程序時,它會按預期將數據拉出,其餘代碼完美工作。任何想法發生了什麼?我的代碼如下:iOS - NSFileHandle availableData僅在應用程序在設備上手動運行時掛起

int pipefd[2];     
pipe(pipefd); 
dup2(pipefd[1], STDOUT_FILENO); 
close(pipefd[1]); 

NSFileHandle *stdoutReader = [[NSFileHandle alloc] initWithFileDescriptor:pipefd[0]]; 

// this method writes output to stout 
int result = [self createOutput:string1:string2]; 

// code hangs on this next line when app is run manually on device) 
NSData *stdoutData = [stdoutReader availableData]; 

,如果我想知道我的設備上,該createOutput方法運行更慢,所以由我試圖讓數據從標準輸出沒有任何尚未時間?

回答

相關問題