#c #semaphore
Вопрос:
У меня есть неназванный семафор, инициализированный до нуля. N потоков ожидают этого семафора, пока они не смогут начать работать. Когда основной поток хочет дать всем им сигнал о том, что они могут начать, он должен выполнить цикл sem_post() в течение N раз. Есть ли самый простой способ сделать это? Что-то вроде трансляции в условных переменных? Я должен упомянуть, что это упражнение позволяет мне использовать только семафоры, поэтому необходима сложная идея.
Комментарии:
1. По возможности показывайте код . Затем объясните, в чем проблема с кодом. Это помогает дать важный контекст, особенно в данном случае, какие инструменты потоковой передачи вы используете .
2. вы можете использовать мьютекс, если хотите освободить все ресурсы одновременно. вы должны использовать семафор, если у вас есть ресурс с другой емкостью.