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

Std::thread автоматическая многопоточность - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Скопировать в текстовой файл слова содержащие символ 'C' http://www.cyberforum.ru/cpp-beginners/thread1311264.html
Дан символ C — строчная (маленькая) латинская буква и текстовый файл. Создать строковый файл и записать в него все слова из исходного файла, содержащие хотя бы одну букву C (прописную или строчную). Словом считать набор символов, не содержащий пробелов, знаков препинания и ограниченный пробелами, знаками препинания или началом/концом строки. Если исходный файл не содержит подходящих слов, то...
C++ Как ускорить пирамидальную сортировку? Второй цикл for в пирамидальной сортировке можно было бы сократить, добавив условие завершения i > 3. Следует ли добавить после этого цикл, и если да, то что, для того, чтобы конечный список как и раньше был отсортированным? Приводят ли подобные изменения к уменьшению числа сравнений? http://www.cyberforum.ru/cpp-beginners/thread1311262.html
Написать программу: Определить разность между наибольшей и наименьшей цифрами натурального числа C++
Напишите код. Определить разность между наибольшей и наименьшей цифрами натурального числа N, представленного в шестиричной системе счисления.
Написать программу: могут ли три числа быть длинами сторон треугольника? C++
Решите эту задачу: даны три числа если они могут быть длинами сторон равнобедренного тупоугольного треугольника, то вычислите его площадь. Выведите длины сторон и площадь в порядке возрастания значений.
C++ Rnunif() http://www.cyberforum.ru/cpp-beginners/thread1311240.html
Не могу ничего найти про эту процедуру. Кто-нибудь может подсказать, что она делает и с ккими параметрами работает?
C++ Проверить наличие файлов, которые должны располагаться в том же каталоге, что и программа Доброго времени суток, уважаемый форумчанин. Дело в том, что я уже третий час бьюсь над решением этой коварной проблемы... Гуглил, хорошо гуглил, но ответа я так и не нашёл. Проблема следующая - я получаю путь к программе по средствам записей в реестре, для примера возьмём C:\Programm Мне нужно проверить наличие файлов, которые должны располагаться в том же каталоге, что и программа.... подробнее

Показать сообщение отдельно
Werewolf_RU
7 / 7 / 3
Регистрация: 03.02.2014
Сообщений: 195
Завершенные тесты: 1

Std::thread автоматическая многопоточность - C++

26.11.2014, 07:17. Просмотров 899. Ответов 5
Метки (Все метки)

Есть данный пример создания массива thread и инициализации его в цикле.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include<iostream> 
#include<sstream> 
#include<thread> 
using namespace std;
 
class printId {
public:
    void operator()() {
        ostringstream out;
        thread::id id = this_thread::get_id();
        out << "Thread with id " << id << " started\n";
        cout << out.str();
    }
};
 
int main() {
    const int length = 10;
    thread thread_array[length];
    for (int i = 0; i < length; i++) {
        thread_array[i] = thread(printId());
    }
    for (int i = 0; i < length; i++) {
        if (thread_array[i].joinable()) {
            thread_array[i].join();
        }
    }
    return 0;
}
Запускается 10 потоков, которые выводят свои id, после чего они все "убиваются". Всё работает, всё хорошо. Вопрос в следующем - можно ли как-нибудь из главного потока передать в запускающийся поток параметр, НЕ через глобальные переменные? Именно в функцию, которая описана в классе.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru