Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
calculon
14 / 14 / 3
Регистрация: 18.07.2012
Сообщений: 79
#1

Как убить std::thread? - C++

09.10.2013, 19:11. Просмотров 868. Ответов 3
Метки нет (Все метки)

К сожалению мне так и не удалось найти информацию о том, как корректно убить std::thread в случае необходимости. Как правило, предлагают выдернуть дескриптор потока и прибить его платформозависимой функцией, но это совсем не айс... Может есть предложения по-лучше?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.10.2013, 19:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как убить std::thread? (C++):

Использование std::function в std::thread - C++
Нужно вызвать function fnc в новом потоке. Как сделать? function <void(vector<char>)> fnc; void test(vector<char> data) { for...

Std::thread как усыпить/ пробудить поток? - C++
Есть ли в std::thread возможность как - то приостановить поток, не разрушая его, а потом, по какому - то сигналу / прерыванию - возобновить...

Ошибка компиляции "no instance of constructor 'std::thread::thread' matches the argument list" - C++
Не могу сообразить почему возникает ошибка. У меня в классе есть метод, который должен работать в нескольких потоках одновременно. Вот он: ...

Boost::thread vs std::thread - C++
Доброго времени суток, решил углубить свои знания, и решил почитать про потоки, бустовые и те что в 11 стандарте приняли, с бустом все ясно...

Как задать скорость обработки операций в потоке std::thread? - C++
Процесс задается при помощи параметра «скорость обработки» - n операций в миллисекунду. Подскажите как это реализовать.

std::thread - C++
Возник вопрос: как создать массив потоков (точнее, как его инициализировать). То есть, мне нужно примерно такое: std::thread...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
castaway
Эксперт С++
4884 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
09.10.2013, 19:20 #2
C++11 threads этого не позволяют. Видимо из-за того, что прерывание потоков могут вызвать неопределенное поведение программы.
0
ct0r
Игогошка!
1773 / 675 / 42
Регистрация: 19.08.2012
Сообщений: 1,287
Завершенные тесты: 1
09.10.2013, 21:31 #3
Из коробки это делать нельзя. Но отложенное прерывание потоков можно организовать самому через condition_variable_any.
1
Avazart
Эксперт С++
7188 / 5362 / 280
Регистрация: 10.12.2010
Сообщений: 23,664
Записей в блоге: 17
09.10.2013, 23:08 #4
Цитата Сообщение от calculon Посмотреть сообщение
как корректно убить std::thread
"Корректно" и "убить" не сочетаются.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.10.2013, 23:08
Привет! Вот еще темы с ответами:

Std::thread в классе - C++
Всем привет есть код #include<thread> #include<iostream> class SomeClass { public : SomeClass(); ...

Std::thread::detach() - C++
Что произойдет, если main - поток завершится раньше чем child.detach()? Добавлено через 3 минуты У меня программа просто завершилась...

Многопоточность в C++11. std::thread - C++
Привет всем! использую таким образом многопоточность class A { public: void fun() { } };

Указатели и std::thread - C++
Всем здрасьте ! Возникла проблема в понимании ... Возможно я написал не в ту тему, но думаю тут есть эксперты. У меня есть класс...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
09.10.2013, 23:08
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru