Я хочу добиться следующего вида сценария с использованием pthreads: в пуле потоков есть два вида потоков.Первый тип выполняет, скажем, fun1, второй выполняет fun2.Основной поток запускает эти два потока (для простоты предположим, что в пуле есть только два рабочих потока, каждый из двух указанных выше видов).Затем основной поток ожидает завершения одного из потоков.Первый завершающий поток уведомляет основной поток, затем основной поток должен уведомить другой рабочий поток о прекращении выполнения своей работы.И цикл продолжается.
Теперь, если я хочу остановить выполнение потока своей работой, что может быть похоже на получение memmove / lock, то я думаю, что лучше всего просто убить / отменить этот поток и воссоздать его.Что вы, ребята, думаете?
Кроме того, если я отменю поток (pthread_cancel), то мне придется вызвать pthread_join, чтобы убедиться, что он действительно отменен, а затем воссоздать его.Это правда?
Спасибо, Нилеш.