2014-11-15 3 views
0

Я пытаюсь открыть файл PPS, который блокирует мой процесс, потому что процесс издателя еще не запущен. После долгих чтений в документации QNX и Blackberry я остался с просьбой к экспертам. Мой код выглядит следующим образом:Открытие файла pps блокирует процесс

fd = open("pps/file/path", O_RDONLY | O_NONBLOCK); 
if(fd >= 0) 
{ 
    fprintf(stdout, "SUCCESS\n"); 
} 
else 
{ 
    perror("Error PPS open:"); 
} 

Я хочу, чтобы открытое, чтобы немедленно вернуться, если издатель еще не запущен. Что происходит в данный момент, open блокирует мой процесс до тех пор, пока не будет запущен процесс издателя, связанный с файлом pps.

Я что-то упустил?

ответ

0

По-видимому, это произошло из-за того, что не были открыты все объявленные файлы ресурсов. Системный процесс, отслеживающий запуск вашего приложения, видит это как сбой и поэтому сообщает об ошибке после таймаута. Когда я убедился, что все объявленные ресурсы были открыты, проблема исчезла.

Смежные вопросы