>>>>Имеется многопоточное приложение. В настоящий момент при необходимости подождать завершения потока я
>>>>пользуюсь pthread_join.
>>>>
>>>>Вопрос. Как сделать, чтобы можно было указать ВРЕМЯ ожидания завершения потока ---
>>>>так, что если поток не завершился за указанное время, ожидание прерывалось
>>>>бы по таймауту?
>>>
>>>
>>> Можно использовать Функции:
>>> usleep(); /*в микросекундах*/
>>> sleep(); /*в секундах*/.
>>
>>Это не совсем то, что надо. Эти функции просто засыпают на указанное
>>время. Но ведь поток может завершиться и раньше. Мне нужно ждать
>>завершения потока НЕ БОЛЕЕ указанного времени.
>
>
> что если в поток по выходу будет выставлять некое условие, а
>вы его отлавливать по
>pthread_cond_timedwait? Я думал об этом. Но тут возникают два других вопроса.
1. Если дочерних потоков не один, а N, то мы дождемся ПЕРВОГО завершившегося потока. А если нужно дождаться ПОСЛЕДНЕГО?
Но это не будет существенным, если найти ответ на
2. Если условие наступило, то как определить, в каком (одном или нескольких) именно из дочерних потоков оно наступило?