420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518

Дождаться завершение потока std::thread

08.12.2014, 21:03. Показов 3351. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Гуру, помогите новичку!

Учусь кодить в потоках!
Задача аналогичная этой: Как дождаться завершения потока?

в потоке №2 бесконечный цикл
в основном потоке тоже бесконечный цикл ждущий нажатие нопки
После нажатия в №2 посылается сигнал для мягкого завершения цила (аналог Terminate()
После завершения потока №2 (не раньше) делаем что-то еще в основном потоке

До этого кодил в Делфи - основы знаю (мютексы, семафоры). Но в С++ не знаю куда копать... И "велосипед изобретать" не охота!

Кодю в minGW. Под win в надежде когда-нибудь перевести в линукс. Использую std::thread.

...намекните какими методами это делают? Мютексы? Какого вида? Можно ли просто узнать - закончился ли поток №2? Можно ли дать время на "мягкое" завершение цикла даже если он "сопротивляется" (3 секунды) до принудительного завершения?

Начал читать http://habrahabr.ru/post/182610/
Там целых 4 мютекса - один из них нужен???
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.12.2014, 21:03
Ответы с готовыми решениями:

Присоединение потока std::thread
Есть некая функция: int arr(){ do_something(); std::thread th1({ func1(); func2(); func3();}); th1.join() do_something2(); ...

Std::thread приостановка потока
Есть прога в C++ Builder. Три функции описаные внизу запускаются в трех разных потоках. Первый поток генерирует данные для для двух других,...

Ошибка при создании потока std::thread
Внутри класса есть функция void move(); Нужно, чтобы она работала в отдельном потоке. Проблема : неправильно указываю параметры....

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.12.2014, 21:03
Помогаю со студенческими работами здесь

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

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

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

Как дождаться завершения потока?
void Thread(void* pParam); void main(){ _beginthread(Thread, 0, NULL);//Запускаем поток, он выполняет свои задачи.... //Тут...

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


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru