Boost Thread Отмена - PullRequest
       11

Boost Thread Отмена

7 голосов
/ 24 июня 2009

Можете ли вы отменить тему повышения, как если бы вы использовали pthread?

Я пишу простой сторожевой таймер для завершения рабочих потоков в случае их сбоя, и, похоже, нет способа просто отменить поток в библиотеке Boost Thread.

Ответы [ 2 ]

10 голосов
/ 25 июня 2009

Они не поддерживают отмену, что хорошо, поскольку может вызвать самые разные тонкие проблемы.

Взгляните на раздел документов, которые охватывают прерывание потока и исключение boost :: thread_interrupted и создают что-то, что позволяет вам достичь того, чего вы хотите, в то же время убирая вещи.

2 голосов
/ 25 июня 2009

Они не поддерживают отмену из коробки (как указано Duck ), однако, в зависимости от обработки, происходящей внутри вашего рабочего потока (-ов), я бы рассмотрел использование boost::condition уведомить нить о том, что она должна закончиться (чисто) при первой же возможности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...