0 / 0 / 0
Регистрация: 24.05.2016
Сообщений: 3
1

2 цикла в разных потоках

24.05.2016, 17:39. Показов 638. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте! Научите! Как правильно делать "что-то" в отдельном фоновом потоке в C++. Пожалуйста код! К примеру:
C++
1
2
3
4
5
6
void moya_Afigenaya_funkciya ()
{
//Один цикл выполняется в уже идущем(главном) потоке где к "A" прибавляется 1   сто раз. 
//Второй цикл, в новом фоновом потоке, прибавляет 1  к  "B"  двести раз. 
//В конце обе переменные, в главном потоке, складываются(без багов, главный поток ждет завершения второго цикла).
}
Нужен полный код именно этого примера, со всеми необходимыми "инклудами", и ничего другого.
(Да я знаю что практического применения это не несет, так как главный поток все равно ждет завершения второго цикла в фоновом потоке, но все же для примера мне это нужно)

Ковыряюсь в исходниках игры Сталкер. Пытаюсь нучиться разбирать его код, так как работа с модами к нему поднадоела.

Спасибо
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.05.2016, 17:39
Ответы с готовыми решениями:

Изменение разных элементов вектора в разных потоках даёт отличный от join() результат, нежели при detach()
Имеется using V = vector<double>; using M = vector<V>; Есть функция матричного умножения A*B....

Обработка вектора в разных потоках
Всем доброго времени суток. Помогите, пожалуйста, реализовать следующую задачу. Задача - есть...

Движение двух фигур в разных потоках
Привет всем!всех с новым годом!и снова я к вам с моими проблемами) короче пишу игрушку в...

C++ занесение структур находящихся в разных потоках, в общую очередь
Весь код приводить не стал, надеюсь идея будет понятна. Я циклом создал потоки а теперь, нужно...

4
Unknownx
26.05.2016, 11:28
  #2

Не по теме:


Цитата Сообщение от tatarinrafa Посмотреть сообщение
Здравствуйте! Научите! Как правильно делать "что-то" в отдельном фоновом потоке в C++
Цитата Сообщение от tatarinrafa Посмотреть сообщение
Ковыряюсь в исходниках игры Сталкер. Пытаюсь нучиться разбирать его код, так как работа с модами к нему поднадоела.
- твой вопрос говорит о том, что тебе ковыряться в исходниках ещё рано. Касательно твоего вопроса - обычная установка WaitForMultipleObjects c флагом bWaitAll = TRUE
DWORD WINAPI WaitForMultipleObjects(
_In_ DWORD nCount,
_In_ const HANDLE *lpHandles,
_In_ BOOL bWaitAll,
_In_ DWORD dwMilliseconds
);
, букварь по функции здесь https://msdn.microsoft.com/en-... s.85).aspx там же ниже и экзампл

0
0 / 0 / 0
Регистрация: 24.05.2016
Сообщений: 3
26.05.2016, 14:55  [ТС] 3
Ок, все понял, только не нашел в твоем сообщении два цикла один из которых прибавляет 1 к "А" сто раз, второй прибавляет 1 к "B" 200 раз. Жду помощи с полным кодом со всеми необходимыми инклудами.
Спасибо!
0
Unknownx
26.05.2016, 15:02
  #4

Не по теме:


Цитата Сообщение от tatarinrafa Посмотреть сообщение
Жду помощи с полным кодом со всеми необходимыми инклудами.
- этого не будет, здесь форум программистов, а не ждущих когда за них сделают, выше дал все необходимые сведения, если они сложны - это значит что тебе вообще не стоит решать то за что взялся на данном этапе.

0
0 / 0 / 0
Регистрация: 24.05.2016
Сообщений: 3
25.06.2016, 19:08  [ТС] 5
Все! разобрался!
Добавлено через 4 минуты
Не могу понять почему я не мог найти что нить простое как тот код. - ковыряйся! учись! ломай!, за то поймешь как оно устроено и как работает
0
25.06.2016, 19:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.06.2016, 19:08
Помогаю со студенческими работами здесь

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

можно как то сравнить возвращаемые значения этими функциями(разнопотоковыми)? функции на разных потоках
можно как то сравнить возвращаемые значения этими функциями? и например если(они равны) {то...

Не работают getch() и cin в двух разных потоках на ввод одновременно/Как снизить нагрузку на процессор?
Код: #include <iostream> #include <cstdlib> #include <conio.h> #include <thread> // g++...

Метод выполнить в 11 разных потоках, соответственно для разных входных массивов
Здравствуйте, начал потихоньку разбираться в многопоточном программирование и не могу до конца...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru