Отмена потока с помощью pthread_cancel: хорошая практика или плохая

У меня есть программа на C ++ в Linux (CentOS 5.3), порождающая несколько потоков, которые находятся в бесконечном цикле для выполнения задания и засыпания в течение определенных минут. Теперь мне нужно отменить запущенные потоки в случае появления нового уведомления о конфигурации и заново запустить новый набор потоков, для которого я использовал pthread_cancel. Я заметил, что потоки не останавливались даже после получения индикации отмены, даже некоторые спящие потоки появлялись после завершения сна.

Поскольку поведение было нежелательным, использование pthread_cancel в упомянутом сценарии вызывает вопрос о хорошая или плохая практика.

Прокомментируйте использование pthread_cancel в вышеупомянутом сценарии.

26
задан Mandar 21 January 2011 в 15:43
поделиться