Я пытаюсь понять использование семафоров в потоках и хочу попытаться преобразовать часть кода, используя pthread_join, чтобы дождаться завершения потока, чтобы использовать вместо него семафоры. Как бы я преобразовал что-то похожее на:
iret = pthread_join (thread [i], NULL);
, чтобы использовать вместо этого семафоры? Я знаю, что использование sem_wait - это блокировка семафора, чтобы помочь перейти к другим потокам, и sem_post, чтобы разблокировать его, но как бы вы преобразовали его таким образом, чтобы он был похож на pthread_join, например, чтобы дождаться завершения потока?